NotQuests - Powerful quest plugin for Paper & NeoForge
Not Quests is not just quests. It is a flexible RPG toolkit for Paper and NeoForge, featuring branching objectives, NPC conversations, reputation systems, conditions, rewards, tags, player profiles, a customizable GUI builder, and much more!
- If you like Not Quests and want more updates, please give it a follow on modrinth to support me! It's just one click :)
- The latest version of NotQuests will be available exclusively on Modrinth, a platform I'm happy to support!
- NotQuests has reached more than 60.000 downloads across all resource sites! Thank you!

Attention: Please use Paper a fork of Paper, or NeoForge. Spigot/Bukkit is not supported.
Requirements to run NotQuests
- Minecraft 26.2 with Paper 26.2 or NeoForge 26.2 (only the latest Minecraft version is actively developed. Older Minecraft versions only work with older NotQuests versions)
- Java 25
Helpful links
Integrations / optional plugins:
- MySQL Database - strongly recommended. Otherwise, SQLite will be used.
- Citizens - needed for Citizens NPC stuff to work. You can also use Armor Stands without Citizens, or FancyNPCs
- FancyNPCs - an alternative to Citizens
- Vault - for Economy stuff
- PlaceholderAPI - needed for placeholders
- MythicMobs - you can use MythicMobs in KillMobs objectives
- EliteMobs - to use the KillEliteMobs objective
- Slimefun - to use the SlimefunResearch objective
- LuckPerms - to use the Permission Reward
- Towny - to use various Requirements and Objectives
- Jobs Reborn
- EcoMobs
- Infinite other plugins through placeholder and command objectives/conditions/actions.
NotQuests is an incredibly easy-to-use, powerful and open-source minecraft Quests plugin and mod, which allows you to create detailed quests.
A powerful and flexible quest plugin does not have to be a pain to use. NotQuests goal is to take the simplicity of "easy" Quest plugins and the power & flexibility of more advanced plugins - and combine it! It allows you to create powerful quests in a logical and simple way.
Some quest plugins want to be super powerful and flexible - but they are too hard to use. Some want to be easy-to-use, but they aren't powerful and only suitable for simple pump-and-dump quests.
NotQuests strives to be easy-to-use & intuitive while being super flexible & powerful at the same time! You can create both simple pump-and-dump farming quests, as well as complex omni-path storylines.
The command system is much faster, easier & flexible than what other Quest plugins have to offer Do note that one goal of NotQuests is to be modern.
Features
- Proxy support (like Velocity, Waterfall & BungeeCord)
- Custom YAML-based GUIs: The entire GUI system is configurable via YAML files, supporting tabbed interfaces, paged item lists, action buttons, custom skull textures, and dynamic placeholders.
- Quest Profiles: Every player with the permission node "notquests.user.profiles" can create profiles in notquests! Each profile has their own quest points, tags active & completed quests etc. This would allow players to start over if they want to, in order to choose a different path, do a speedrun or just to experience your RPG again - or whatever else!
- Sub-objectives! Each objective can have unlimited sub-objectives. And each sub-objective can also have unlimited sub-sub-objectives.. and so on!
- Variable system for registering flexible Actions & Conditions at the same time
- Actions, Conditions, Objectives & Conditions are registered dynamically. This makes it easy to add your own via the API or by contributing.
- Tag System (save data per-player)
- Flexible Conversation system, tightly integrated with actions & conditions
- Multiple integrations with other plugins (if not, you can achieve a lot with Placeholder Conditions/Objectives & Console Command Actions)
- Great, extensive API
- Complete GUI for the User Interface
- Beautiful GUI & Chat Design
- Modern coloring using MiniMessage (legacy is unsupported)
- Player data is saved in MySQL or SQLite, Quest configuration data in a configuration file
- Quest Point System (You can create your own currency via tags)
- Smart Command Tab Completions for all User and Admin commands
- Many usable Objectives, Conditions (= Requirements) and Actions (= Rewards). Full list of objectives: https://www.notquests.com/docs/documentation/types/objectives
- Flexible NPC system - this would allow you to easily integrate other NPC plugins with notquests in the future
Sub-Objectives

PlaceholderAPI Placeholders
Player Placeholders:
%notquests_player_has_completed_quest_QUESTNAME% %notquests_player_has_current_active_quest_QUESTNAME% %notquests_player_is_objective_unlocked_and_active_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_is_objective_unlocked_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_is_objective_completed_OBJECTIVEID_from_active_quest_QUESTNAME% %notquests_player_questpoints% %notquests_player_active_quests_list_horizontal% %notquests_player_active_quests_list_vertical% %notquests_player_completed_quests_amount% %notquests_player_active_quests_amount% %notquests_player_tag_TAGNAME% %notquests_player_variable_VARIABLENAME% %notquests_player_expression_EXPRESSION% %notquests_player_rounded_expression_EXPRESSION% %notquests_player_quest_cooldown_left_formatted_QUESTNAME%
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 | ||||
| 6h ago | 1 |
- Added
/qa clone <sourceQuest> <newQuestName>to copy a quest without copying player progress. - Creating a quest now shows clickable shortcuts for setting its display name, icon, objectives and NPC attachments.
- Fixed the duplicated
/qa items itemscommand path. It's now/qa items. - Giving saved items through
/qa itemsnow keeps their display names, just like theGiveItemaction. - Eating one item now counts as one, not the size of the held stack.
- Protected or cancelled block breaks no longer count towards mining objectives on Paper.
- Delivery NPCs no longer take extra items after the requested amount has been delivered.
- Conversations now respect delays before continuing to the next line or showing answers.
- Fixed conversation chat restoration: preserves chat-plugin formatting (including LPC), clears history on logout and no longer replays chat-security warnings.
- Removed PacketEvents. Chat recording now uses native packet handling only.
- Added
/qa clone <sourceQuest> <newQuestName>to copy a quest without copying player progress. - Creating a quest now shows clickable shortcuts for setting its display name, icon, objectives and NPC attachments.
- Fixed the duplicated
/qa items itemscommand path. It's now/qa items. - Giving saved items through
/qa itemsnow keeps their display names, just like theGiveItemaction. - Eating one item now counts as one, not the size of the held stack.
- Protected or cancelled block breaks no longer count towards mining objectives on Paper.
- Delivery NPCs no longer take extra items after the requested amount has been delivered.
- Conversations now respect delays before continuing to the next line or showing answers.
- Fixed conversation chat restoration: preserves chat-plugin formatting (including LPC), clears history on logout and no longer replays chat-security warnings.
- Removed PacketEvents. Chat recording now uses native packet handling only.
- Fixed startup and shutdown crashes when an optional integration is missing or uses a different plugin name (e.g. FastAsyncWorldEdit).
- Prevented a failed startup from overwriting quest and player data with empty state.
- Removed nested command aliases from suggestions. The top-level
/nqand/notquestsaliases remain. - Fixed the CraftLegacy warning and long delay when loading item or block command suggestions for the first time.
- Stopped quest editing and normal quest progress from triggering unnecessary full player database saves.
- Fixed NPC selection while adding DeliverItems objective:
rightClickSelectnow waits for a selection, and direct Citizens/FancyNPCs selectors work correctly. - Hidden objectives no longer appear in the quest-accepted message before they are unlocked.
- Fixed
/nq takeshowing the already-accepted warning twice. - Fixed objectives and other numbered quest entries being reloaded as ID 1 after a restart, which could break active quest progress.
- Fixed startup and shutdown crashes when an optional integration is missing or uses a different plugin name (e.g. FastAsyncWorldEdit).
- Prevented a failed startup from overwriting quest and player data with empty state.
- Removed nested command aliases from suggestions. The top-level
/nqand/notquestsaliases remain. - Fixed the CraftLegacy warning and long delay when loading item or block command suggestions for the first time.
- Stopped quest editing and normal quest progress from triggering unnecessary full player database saves.
- Fixed NPC selection while adding DeliverItems objective:
rightClickSelectnow waits for a selection, and direct Citizens/FancyNPCs selectors work correctly. - Hidden objectives no longer appear in the quest-accepted message before they are unlocked.
- Fixed
/nq takeshowing the already-accepted warning twice. - Fixed objectives and other numbered quest entries being reloaded as ID 1 after a restart, which could break active quest progress.
- Added full NeoForge support.
- Updated to Paper 26.2, and NeoForge 26.2.
- Rebuilt the plugin around a shared core, making behavior and future fixes consistent across both Paper and NeoForge platforms.
- Added full NeoForge support.
- Updated to Paper 26.2, and NeoForge 26.2.
- Rebuilt the plugin around a shared core, making behavior and future fixes consistent across both Paper and NeoForge platforms.
## New objectives
- New
Harvestobjective.** Counts only fully grown crops, grown cactus/sugar-cane segments, and melon/pumpkin fruit. Directly placed fruit/cactus/sugar-cane blocks are ignored to reduce place-break abuse. - New
BrewItemsobjective.** Counts freshly brewed items when players take them from a brewing stand, so manually inserted old potions do not give progress. - New
TradeWithVillagerobjective.** Counts matching result items taken from villager trade windows, so you can build trading/economy quests around what the player actually receives. - New
TameMobsobjective.** Counts mobs tamed by the player, with support for a specific entity type orany. - New
SmithItemsobjective.** Counts matching result items taken from a smithing table, useful for upgrade and armor-trim quest steps. - New
Dieobjective.** Counts player deaths, optionally filtered by a Minecraft damage type such asfall,lava,drown, orplayer_attack. - New
ShootArrowobjective.** Counts arrows shot by the player that land inside a configured radius around a target location, or inside a WorldEdit selection when WorldEdit is installed. - Objective location markers are documented.** Objectives can now be documented and managed with
location set,location enable, and the cleanlocation disablecommand for Wynncraft-style guiding markers.
## BetonQuest 3
- BetonQuest support is back for BetonQuest 3.0.0 and newer.** NotQuests restores the bridge features from older releases: NotQuests actions/conditions inside BetonQuest, BetonQuest actions from NotQuests, a BetonQuest objective-state objective, a
BetonQuestConditionvariable, and thenotquestsBetonQuest conversation interceptor. - Older BetonQuest versions stay disabled.** BetonQuest 1.x/2.x are detected and skipped
## Command and usability improvements
- Duration arguments accept milliseconds.** Values such as
500ms,1s,5m,2h, and1dare accepted; bare numbers are still treated as milliseconds. - Better value suggestions.** Boolean arguments suggest
true/false, number and coordinate arguments suggest useful examples, value flags suggest values after the flag, and item selections keep suggestions for following arguments. - New player/world variables.**
FoodLevel,Saturation,DistanceToLocation,NearbyEntityCount, andWeatherare available for conditions, expressions, and settable actions where applicable. - New visual/player actions.**
ShowTitle,ShowActionBar,SpawnParticle, andTeleportmake it easier to build guided quest moments without command-workarounds. - Cleaner command behavior.** Comma-separated item selections work unquoted, item amount/world/NPC/command suggestions are restored after positional amounts, short alias clutter is removed from suggestions, and the command-hint action bar shows more useful argument labels.
- More flexible location-region setup.**
ReachLocationno longer requires WorldEdit; it can be created withworld x y z radius, while WorldEdit users still get theworldeditselectionshortcut. - Easier
Interactobjective setup.** In-game admins can now useInteract <amount> lookingto target the block they are looking at instead of typing world coordinates by hand. Interact objectives with no explicit--leftClickor--rightClickflag now count either block click instead of becoming impossible to complete. - Easier and more reliable objective location markers.** Wynncraft-style guiding markers now support
location set here,location set looking,location status,location preview, andlocation clear, can optionally show a bossbar compass withvisual.objective-tracking.location-compass.enabled, hide the fake beam source below solid targets instead of visually replacing or floating above them, keep the fake beam alive while the player stands still, clean themselves up more safely, and refresh correctly after chunk loads.
## Compatibility
- Built for **Paper 26.1.2**.
- Requires **Java 25** for the 26.1.2 build.
## ✨ New features
- New
FeedMobsobjective.** Counts how many times a player feeds a particular mob - wheat to a cow, seeds to a chicken, and so on - Helpful command menus are back.** Typing an incomplete admin command -
/qa actions,/qa edit <quest> objectives,/qa conditions, … - now lists the available sub-commands instead of Minecraft's blunt "Unknown or incomplete command" error.
## ⌨️ A rebuilt command system
- No more Cloud.** The command framework has been migrated entirely off the third-party Cloud library onto Paper's native Brigadier command API, behind a small in-house wrapper. They're the same commands you already know, just one fewer dependency that can break on an update.
- A more useful hint bar.** The "what to type next" helper above your hotbar now shows the actual argument it wants -
[TagName],[Block],[amount]- instead of a generic, sometimes-wrong label, and no longer renders a double/. - Cleaner tab-completion.** Suggestion lists are no longer cluttered by single-letter sub-command aliases or by an unselectable
<Enter String>entry when real values (blocks, tags, …) are available. - Flag values complete correctly.** After typing flags that need a value - for example
--delayor--player— tab-completion now suggests the value for that flag instead of suggesting--delay/--playeragain.
## 🐛 Bug Fixes
GiveItemrewards and item objectives parse correctly.**… rewards add GiveItem grass_block 1no longer fails with "Cannot parse item argument" - the item argument no longer swallows the amount that follows it. Comma-separated material lists work again too, unquoted:… GiveItem grass_block,dirt 1.- Your tags are suggested again.** Adding a tag-based action or condition (
TagInteger,TagString, …) now tab-completes your existing tags instead of only offering<Enter String>. - Boolean values are suggested where you expect them.** Commands like
/qa conditions check Flying equals <value>now suggesttrueandfalsefor the final value. - Conversation NPC lists are readable.**
/qa conversations listnow shows attached NPCs as labels likecitizens:5 (Guard Captain)instead of dumping a raw Java-style object string. - Number variables that take more than one value work.**
RandomNumberBetweenRange <min> <max>, block coordinates, and similar no longer have the first number eat the rest of the line. - Checking a
Blockvariable no longer errors.**/qa variables check Block <world> <x> <y> <z>returned aNullPointerExceptionbecause the y and z coordinates were mis-registered; it now returns the block at that position. - Commands with two value-flags behave.** When a flag's value is omitted (e.g.
--min --max 3), the parser no longer mistakes the next flag for the missing value and silently drops it. - Category display names can contain spaces** again —
/qa categories edit <category> displayName set Some Long Name- matching how quest display names already worked.
## 🛡️ Reliability
- Bad version-specific config values no longer crash loading.** If a config contains a particle or item name that does not exist on this server version, NotQuests now logs a concise warning and falls back to a safe default instead of failing with a raw enum/config error. This covers general particle settings, GUI item materials, quest/category item stacks, and saved item-selection data.
- The bundled demo conversation no longer uses delays.** The sample conversation now avoids delay settings
## 🛠️ Under the hood
- A real end-to-end command test now runs in CI.** Every push boots an actual Paper server with the freshly built plugin and runs every registered objective, action, condition, trigger and tag type through the console, failing the build on error. This caught several of the fixes in this release.
## ✅ Compatibility
Built for **Paper 26.1.2** and **Java 25**.
It includes the same 6.2.0 command-engine migration, command help/suggestion fixes, FeedMobs objective, runtime command sweep coverage, and reliability fixes from the main 6.2.0 release.
This build also handles invalid version-specific config values more gracefully: bad particles, GUI item materials, quest/category item stacks, and saved item selections now log a concise warning and fall back to a safe default for this server version instead of crashing load.
## Required software
- Paper 1.21.11
- Java 21 or Java 25
- Optional NPC integrations are compiled against Citizens 2.0.41 and FancyNPCs 2.10.1.
It includes the same 6.2.0 command-engine migration, command help/suggestion fixes, FeedMobs objective, runtime command sweep coverage, and reliability fixes from the main 6.2.0 release.
This build also handles invalid version-specific config values more gracefully: bad particles, GUI item materials, quest/category item stacks, and saved item selections now log a concise warning and fall back to a safe default for this server version instead of crashing load.
## Required software
- Paper 1.21.1
- Java 21 or Java 25
- Optional NPC integrations are compiled against Citizens 2.0.35 and FancyNPCs 2.9.2.
## ✨ The good stuff
- ⌨️ The command-hint bar has been polished**:
- It tells you what comes next again -
[Quest Name],[amount], or<option>for sub-commands - instead of a useless[...]. - It **sticks around when you pause** instead of flickering away, and **echoes what you're typing** as you go.
- Number arguments are colorful again. ✨
- 🔖 New:
/qa tags check <tag> [--player]** - peek at a tag's current value (reputation, flags, whatever) without having to remember its type. Perfect for debugging your tag setups.
- ✦ FancyNPCs quest givers now sparkle.** FancyNPCs with a quest attached finally show the floating quest-giver particle above their head, just like Citizens NPCs and armor stands do.
- 🤝 Smoother NPC setup.** Attaching quests and conversations to NPCs now works exactly as documented - type
citizens:0/fancynpcs:<id>and it attaches to *that* NPC, or use **rightClickSelect** (now suggested in tab-completion, for both quests *and* conversations) to just click the NPC in-game.
## 🐛 Fixes
- "You don't meet the requirements" actually shows up now** when you try to accept a quest you can't take - from an NPC, an armor stand, or the menu. Before, the menu just silently closed
- No more "Confirm Command Execution" popup** when clicking conversation options or the chat
[CHOOSE]/[ACCEPT]buttons. Actionrewards work again** -/qa edit <quest> rewards add Action …no longer errors out./qa edit <quest> npcs listis readable** - it showscitizens:0/fancynpcs:<id>instead of a wall of internal gibberish.- The Citizens quest-giver particle disappears when you clear the quest** from an NPC (it used to linger forever).
/qa progress** formatting has been fixed
## 🔌 Integrations
- FancyNPCs** updated from **2.10.0** to **2.10.1**.
## 🛠️ Under the hood
- The command system now runs on **Paper's native Brigadier** - we no longer use LegacyPaperCommandManager
## ✨ New features
- FancyNPCs support:** [FancyNPCs](https://modrinth.com/plugin/fancynpcs) is now supported, alongside Citizens and armor stands.
- New
MilkCowobjective.** Counts cows milked (detected by right-clicking a cow with an empty bucket), mirroring the Shear Sheep objective with an optional cancel flag.
## 🛡️ Reliability & data safety
- No more lost quest progress on a failed save.** Player data is now saved inside a single database transaction, so a mid-save failure (full disk, lock timeout, dropped connection) rolls back cleanly instead of deleting data it cannot re-write.
- Thread-safety fixes** around the online-player registry, a player's completed/failed/pending quest lists, quest tags (setting a tag to nothing now removes it), and conversation chat history - preventing rare crashes and data corruption.
- Visual effects on the main thread.** Armor-stand quest-giver particles and the quest/objective completion title + sound now always run on the main thread, where Paper requires them.
## 🐛 Bug Fixes
- Non-OP players can use
/notquestsagain.** Itsnotquests.usepermission (default on) was never registered on Paper, so non-operators got "Unknown command". The admin commands (/nqa,/qa) still require operator /notquests.admin. - Tab-completing a mob/entity argument** (for
KillMobs,SpawnMob, …) no longer throws an error and shows suggestions again. - Killing an EcoMob now counts** towards a matching
KillMobsobjective (the kill was never detected before). - "Reach job level" objectives now track your real Jobs level**, including admin changes like
/jobs level add, and complete once you reach the target level. - Attaching a quest to an armor stand works again** - the "add" item did nothing before. Right-click the armor stand with it.
- Quest previews from armor stand / FancyNPCs quest givers no longer error out**, and the NPC quest-list GUI shows its proper title instead of "Language string not found".
## 🔌 Integration updates
Every supported plugin integration is now on its latest version (old → new):
- Citizens** 2.0.30 → 2.0.42 (escort-NPC following moved to the new Citizens API)
- PlaceholderAPI** 2.11.5 → 2.12.2
- MythicMobs** 5.3.0 → 5.12.1
- EliteMobs** 9.1.9 → 10.4.0
- WorldEdit** 7.3.0 → 7.4.3
- LuckPerms** 5.4 → 5.5
- Towny** 0.98.4.4 → 0.103.0.0
- Jobs Reborn** 4.17.2 → 5.2.6.5
- Floodgate** 2.2.2 → 2.2.5
- eco** 6.38.3 → 7.6.3
- EcoBosses** 8.78.0 → **EcoMobs** 11.7.0 (the developer renamed EcoBosses to EcoMobs; existing eco-mob spawn actions keep working)
- Vault** (1.7.1) and **Slimefun** (RC-37) were already current.
Nothing changes in how you use these - the plugin installed on your server is still what runs.
## 🧩 Dependency upgrades
- Adventure** 4.18.0 → 4.26.1 (kept on the 4.x line to match Paper 26)
- commons-io** 2.11.0 → 2.22.0
- PacketEvents** 2.12.0 → 2.12.2
- geantyref** 1.3.13 → 1.3.16
- Configurate** 4.1.2 → 4.2.0
- Lombok** 1.18.44 → 1.18.46
- SQLite** 3.53.1.0 → 3.53.2.0
- Paper dev bundle** build 64 → 69
- Shadow** 9.4.1 → 9.4.2
- Gradle** 9.0.0 → 9.5.1
## 🗑️ Removed
- UltimateJobs** - no longer maintained; its integration and "reach job level" objective were removed. Jobs Reborn still covers job objectives.
- Leftover **ZNPCs** and **BetonQuest** references that were no longer used.
## 🛠️ Under the hood
- More reliable builds.** Every plugin integration is bundled with the project as a local file instead of being downloaded from a third-party repository at build time, so a relocated/offline repo can no longer break a build.
## ✅ Compatibility
Built for **Paper 26.1.2** and **Java 25**.
## 🧩 Dependency upgrades
- Updated to **Minecraft / Paper 26.1.2**.
- Newer **InvUI 2.1.0** (the GUI library) and **HikariCP 7.0.2** (database pooling).
## 🐛 Bug Fixes
- Tab-completing a boolean condition (like
Climbing,Flying, orActiveQuests) under/qa conditions addno longer crashes. /qa conditions addno longer rejects valid input with "Invalid syntax", so you can actually create those conditions now./nq abortworks again instead of throwing an error, including when you have no active quests./nq abort,/nq progress,/qa failQuest, and/qa completeQuestno longer get blocked by a bogus "accepting/previewing is disabled" message when the quest preview GUI is turned on.
## 🌍 Translations
- All 31 languages are back in sync with English. Outdated and renamed entries were cleaned up, and missing lines were filled in, while existing translations were left untouched.
## 🛠️ Refactors
- Reworked, nicer demo conversation. (
/qa conversations create namehere --demo)
## Breaking Changes
- Paper 1.21.1** is now supported
- Java 21** is now required (previously Java 17)
- Removed integrations:** BetonQuest, zNPCs, and ProjectKorra have been temporarily removed to keep notquests simple and easier to maintain. If you relied on BetonQuest conditions/events, zNPCs NPC linking, or ProjectKorra objectives, these are no longer available.
## New Features
### Custom YAML-based GUIs
- The entire GUI system has been rewritten with a new YAML-driven GUI framework
- GUIs are now fully configurable via YAML files in the
plugins/NotQuests/guis/folder - Supports **tabbed interfaces**, **paged item lists**, and **action buttons**
- Default GUIs included: main menu with tabs (active quests / take quests), quest preview, NPC quest selection, category browsing, and quest abort confirmation
- Custom skull textures, dynamic placeholders (
%QUESTNAME%,%CATEGORYNAME%,%PLAYER%, etc.), and per-item lore/display name from the language file - Powered by InvUI
- Paper 26.1.1** is now supported. Older versions are no longer supported
- Java 25** is now required (previously Java 17)
- Removed integrations:** BetonQuest, zNPCs, and ProjectKorra have been temporarily removed to keep notquests simple and easier to maintain. If you relied on BetonQuest conditions/events, zNPCs NPC linking, or ProjectKorra objectives, these are no longer available.
## New Features
### Custom YAML-based GUIs
- The entire GUI system has been rewritten with a new YAML-driven GUI framework
- GUIs are now fully configurable via YAML files in the
plugins/NotQuests/guis/folder - Supports **tabbed interfaces**, **paged item lists**, and **action buttons**
- Default GUIs included: main menu with tabs (active quests / take quests), quest preview, NPC quest selection, category browsing, and quest abort confirmation
- Custom skull textures, dynamic placeholders (
%QUESTNAME%,%CATEGORYNAME%,%PLAYER%, etc.), and per-item lore/display name from the language file - Powered by InvUI 2.0
- [+]** Support paper 1.21.1
- [!]** Remove unused dependencies. This reduces the size of notquests from 6.5 MB to 3.4 MB
- [!]** Fix creation and saving of quest profiles not working (/nq profiles)
- [^]** Upgrade various dependencies of notquests: betonquest, citizens, elitemobs, projectkorra, uclans, znpcs, floodgate, placeholderapi, crunch, hikaricp
- [@]** Update various translations
- [+]** Support paper 1.20.6
- [!]** Disable UltimateClans support, as their maven repository for v5 has been deleted
- [+] Support mythicmobs factions in killmobs objective (mmfaction:yourfactionname)
- [!] Attempt to fix db issues
- [+] Support mythicmobs factions in killmobs objective (mmfaction:yourfactionname)
- [!] Attempt to fix db issues
- [!] fixed sqlite locking issues by limiting its max. connection pool size to 1.
- [+]** Update to Paper 1.20
- [+]** Update Citizens API so it supports the latest version
- [+] Support Minecraft 1.19.4 (Thanks to @BakaAless )
- [+] Drop Spigot support completely. This reduces the jar size!
- [+] Add AND and OR to boolean conditions (Thanks to @BakaAless )
- [^] return warning when using /qa editor command
- [!] Prevent unnecessary quest saves during plugin load. This should increase the load speed of NotQuests, especially if you have many Quests
- [!] fix OtherQuest objective task description not displaying the displayname of the other Quest
- [!] fix typo in Quest chat preview
- [!] fix conversation focus distance check erroring when player is in different worlds
- [!] fix QuestOnCooldown variable not working
- [@] Update a bunch of translations
- [+] New objective: Enchant
- [+] For conversations: Add random line possibility (Thanks to @BakaAless ). Instead of just "text:", you can now specify "texts:" as a string list inside of conversations. Showcase: https://github.com/AlessioGr/NotQuests/pull/189
- [^] Update all kinds of dependencies
- [^] Stop a moving Citizens NPC when in a conversation (Thanks to @BakaAless ). Showcase: https://github.com/AlessioGr/NotQuests/pull/188
- [^] Allow minimessage format on quest-giver-npc-indicator-above-name (Thanks to @TheZexquex )
- [^] Ability to check objective unlock conditions for:
- every time an action is run for a player (default: on)
- every X seconds (default: off)
This also fixes some faulty logic with repeating tasks. Stuff like condition objectives were checked too quickly/often if multiple players are online
- [!] Fix quest giver hologram armorstand not getting destroyed when despawning npc (Thanks to @TheZexquex )
- [!] Fix armor being visible in armor slots after completing DeliverItems objective (Thanks to @TheZexquex )
- [!] Finally fix lang tags being invisible inside custom gradient tags if they are not wrapped in a solid color. This removes the hard-coded blue color for translated material names and thus allows for more customization.
- [+]** Better conversations: Conversation Focus! Thanks @BakaAless for adding this feature
- [!]** Fix errors when a condition is executed from an async thread
- [^]** updated BQ integration interceptor to work with the latest version