Quests

Quests

Plugin

Add goals for your players

Server AdventureEconomyGame Mechanics

772 downloads
16 followers
Created2 years ago
Updated3 months ago

Follow Save
Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
Filter loader...
Filter versions...

3.15

by LMBishop on Feb 18, 2024
Download

Hello everyone,

This update adds a bunch of new features including: new task types and improvements to existing ones, support for the experimental Folia, a new quest item type, bossbar / actionbar support, and several bug fixes.

Provisional support for the Folia project has been implemented. Folia is a fork of Paper which adds "regionized multithreading" to the server; Quests should now be able to make use of this new multithreading system.

A new BossBar and ActionBar system as been added, which will allow you to display task progress and progression through both these methods. This can improve player experience by not requiring them to open the quests menu to see how close they are to completing a task. This system uses a new set of placeholders called "progress placeholders", whose purpose is to represent the progress for each task. For now, these must be manually set per quest, but in the future there are plans to automatically provide template strings for each task type, removing the need for manual configuration.

There are 9 new task types: blockitemdropping, projectilelaunching, pyrofishingpro_fishing, ecomobs_killing, znpcsplus_interact, znpcsplus_deliver, servernpc_interact, servernpc_deliver, and pinataparty_hit. The configuration for these tasks can be found on the wiki. In addition to new tasks, there are some fixes and improvements to exiting ones, such as: async support for placeholderapi_evaluate task type, better support for smithing task type, farming and position task type reworks, better mode detection in walking task type, and more.

Finally, some other miscellaneous improvements to highlight are: a new ItemsAdder quest item, time-limit placeholder, addition of "cancelcommands" option in quests, support for namespaced sounds, an improvement error messages, support for '_' and '-' in quest and task IDs, PlaceholderAPI support for GUI titles and fixes, and per-menu GUI trimming options. For a full list of changes, please review the commit log below.

A special thanks to the following people on GitHub for their contributions, they have made up the bulk of this update and without them then these changes would not have happened: Krakenied, Elikill58, NahuLD, svaningelgem, and AfkF24.

Commit log since v3.14.2

593d3af - Add ItemsAdder quest items <LMBishop>
b721847 - Add some config <Elikill58>
e5c0237 - Add support for Folia <NahuLD>
3448146 - Fix issues and wrap up work <NahuLD>
63d8c6b - Remove unused region scheduler <NahuLD>
481773d - Add missing scheduler wrapper methods for future usage <NahuLD>
af949f2 - Fix quest controller ignoring count-towards-limit <LMBishop>
548deb8 - Actually fix counts-towards-limit <LMBishop>
104e1f6 - Fix issues with delay ticks for Folia scheduler <NahuLD>
ae262e0 - Add time limit placeholder (closes #524) <LMBishop>
0f5ccf8 - Make placeholder always return no tracked quest <LMBishop>
86a365d - Add allow negative progress option to mining task <LMBishop>
d8c0362 - Alternative task constraints implementation <Krakenied>
ffa6b7d - Update task types to the new impl <Krakenied>
0d81659 - Some refactor Use new constraints impl <Krakenied>
8642fec - Add alternative raw value ctor <Krakenied>
0b0cd61 - Add alternative single constraint ctor <Krakenied>
dc25526 - Remove finals to keep the project code style <Krakenied>
3e677ae - Clean project and update gitignore <Elikill58>
0de1838 - Remove bungee in gradle <Elikill58>
95d5363 - Add bossbar and full track advancement <Elikill58>
fa3e19f - Fix error <Elikill58>
b30c24a - Add actionbar <Elikill58>
b6802d4 - Prevent possible issue <Elikill58>
ee4e229 - Change default values <Elikill58>
541d53f - Fix 0/1 value <Elikill58>
a67162a - Better support for smithing task type in 1.20 <Krakenied>
edfc159 - Rewrite position task type <Krakenied>
816be92 - Fix build after rebase <Krakenied>
953ca7e - Get rid of tabs <Krakenied>
93e7821 - Fix not deleted bossbar <Elikill58>
a101ba1 - Add missing import <Elikill58>
c7c9acf - Rewrite & optimize boss bar <Krakenied>
1cbede7 - Add dedicated progress placeholders section <Krakenied>
78f8118 - Rewrite title and action bar handles Add hex support to action bar (Paper only feature) <Krakenied>
ae484b6 - Optimize and organize imports <Krakenied>
7f4b9d3 - Add block item dropping task type Closes https://github.com/LMBishop/Quests/issues/544 <Krakenied>
29d15b2 - Organize imports in common project <Krakenied>
41e6964 - Clean up task type registration <Krakenied>
43812ea - Optimize send track advancement method more <Krakenied>
b94b596 - Fix up task type manager <Krakenied>
68010d3 - Add and remove players from the boss bar synchronously <Krakenied>
b462fe2 - Farming task type rework Closes https://github.com/LMBishop/Quests/issues/548 <Krakenied>
15011f6 - Make boss bar color and style customizable <Krakenied>
157a13f - Detect the server version using a long-standing API <Krakenied>
c9d978f - Additional online check in inventory task type Fixes NPE on logout <Krakenied>
ba56278 - [ci-skip] Update Gradle wrapper <Krakenied>
9206827 - Remove expired links from docs <LMBishop>
af2b1f2 - Dynamic boss bar style and color support <Krakenied>
3f22618 - Better required amount detection <Krakenied>
9aa600d - Add cancel commands Partially closes https://github.com/LMBishop/Quests/issues/558 <Krakenied>
9043a4d - Improve item getters Implement separate skull getters <Krakenied>
8ddb69a - Schedule inventory check at location to avoid weird behaviour <Krakenied>
af711c9 - Add PyroFishingPro fishing task type <Krakenied>
d7f1c29 - Nullable block interact task type support <Krakenied>
25d27b2 - Remove unnecessary method calls <Krakenied>
5facd15 - Add useful method overloads <Krakenied>
1b44d06 - Implement projectile launching task type <Krakenied>
5b61fc4 - Fix walking task type not detecting horse mode <Krakenied>
25a2d1a - Bump Gradle wrapper to 8.5 <Krakenied>
ee59747 - Bump checkout and setup-java actions to v4 Improve workflow run condition <Krakenied>
98e55ac - Fix CoreProtect delay caused by queue Closes https://github.com/LMBishop/Quests/issues/162 <Krakenied>
369ded8 - Add namespaced sounds support Closes https://github.com/LMBishop/Quests/issues/585 <Krakenied>
554bb10 - Add namespaced types support to the 1.14+ item getter <Krakenied>
a55916d - Do not try to load tasks with unresolved task type Closes https://github.com/LMBishop/Quests/issues/583 <Krakenied>
e6f0d05 - Add FabledSkyBlock 3 support <Krakenied>
3551c1e - EcoMobs support <Krakenied>
b1bf539 - Add WildStacker support to mob killing and breeding task types Closes https://github.com/LMBishop/Quests/issues/584 <Krakenied>
a184e76 - Also allow '_' and '-' to be used as "characters". <svaningelgem>
65f0ad3 - Reverting back to for-loop because of performance considerations. <svaningelgem>
454c8d4 - List all available categories when you encounter a missing one. <svaningelgem>
597086d - camelCase the variable name. <svaningelgem>
2c96d1a - Add PlaceholderAPI support in GUI titles <AfkF24>
c5f63c4 - Set back button to correct slot if GUI trim is off <AfkF24>
b2918ae - Fix quests occupying pagination row slots <AfkF24>
af1a539 - Add GUI trimming options per GUI type <AfkF24>
e356e1c - Support custom elements in started quests menu <AfkF24>
48ee7a6 - Add async and refresh-ticks options to PAPI task type <Krakenied>
832e99c - Ensure that custom menu element commands are ran from Folia GlobalTickThread Closes https://github.com/LMBishop/Quests/issues/601 <Krakenied>
3c354a0 - Update documentation for release 3.15 <LMBishop>
df3263b - Add ZNPCsPlus support <Krakenied>
4cdb262 - Add ServerNPC support <Krakenied>
399dd21 - Handle empty names in another way <Krakenied>
704ece3 - Do not send track advancement for PAPI task type as it behaves really weird <Krakenied>
0229544 - Add ServerNPC and ZNPCsPlus interact task types too <Krakenied>
604537b - Use current hologram data for ServerNPC task types <Krakenied>
bb6a273 - Another compatibility requirement for ServerNPC tasks <Krakenied>
0cc6541 - Add PinataParty support Closes https://github.com/LMBishop/Quests/issues/518 <Krakenied>
c650dfb - Remove unnecessary classes from IridiumSkyblock JAR to reduce its size <Krakenied>
b636bef - Update documentation <LMBishop>
2343ebc - Bump version number <LMBishop>

More information

3.14.2

by LMBishop on Jul 11, 2023
Download

This update fixes an issue where the plugin would crash when attempting to modify quest progress files for offline players. This also fixes events for the ecobosses_killing task type not registering, and fixes errors thrown from the ShopGUIPlus task type.

Commit log since v3.14.1

8a0e5d3 - Add null check for shop and de-duplicate common code <LMBishop>
325b78f - Add @EventHandler annotation to BossKillEvent <LMBishop>
8017642 - Fix some moddata commands blocking the main thread <LMBishop>
01c1457 - Fix broken links in documentation <LMBishop>
3345d07 - Bump version number <LMBishop>

More information

3.14.1

by LMBishop on Jul 7, 2023
Download

This update fixes a bug where the plugin would generate errors on older versions of Minecraft.

Commit log since v3.14

b765f1b - Add changelog generator script <LMBishop>
7a7298e - Revert "Optimize TaskUtils#getApplicableTasks method" <LMBishop>
e079568 - Add missing documentation for mobs in taming and breeding tasks <LMBishop>
758fe7f - Bump version number <LMBishop>

More information

3.14

by LMBishop on Jul 6, 2023
Download

Hi everybody,

This update has a whole lot of bug fixes and technical improvements. To list a few, the Essentials task type breaking on certain versions has been fixed, the breeding task has been improved for server running 1.10+, the walking task now works properly for vehicles, and there have been various performance optimisations made.

Additionally, this update adds a few new task types: replenishing, playerpoints_earn (for the plugin PlayerPoints), and ecobosses_killing (for the plugin EcoBosses). There are also new options for several other task types: blockbreak can now query PlayerBlockTracker (an alternative to CoreProtect), shearing can now be used on entities other than sheep and can be restricted to specific colours, and most tasks which require an item has a new 'exact-match' option.

Finally, the Quests wiki has a new home at https://quests.leonardobishop.com, and documentation is now distributed with the source code. Previously undocumented task types (such as blockshearing and smithing) have now been properly documented, among other missing options.

A special thanks to @Krakenied on GitHub for the majority of these changes! And apologies for my own absence, as usual I am busy at university; however, I have quite a bit of time now over summer to set aside for Quests, so updates and support should be a bit more regular.

(P.S. For those asking, Quests is already compatible with Minecraft version 1.20.x)

Commit log since v3.13.3

9399366 - Replace fastutil Int2ObjectOpenHashMap with hppc IntObjectHashMap Closes https://github.com/LMBishop/Quests/issues/497 without significant plugin JAR file size change <Krakenied>
e06d3f0 - Fix ShopGUIPlus task types Fixes https://github.com/LMBishop/Quests/issues/496 <Krakenied>
5e552ee - Fix Essentials task types Closes https://github.com/LMBishop/Quests/issues/488, https://github.com/LMBishop/Quests/issues/468, https://github.com/LMBishop/Quests/issues/457 and https://github.com/LMBishop/Quests/issues/290 <Krakenied>
efa6d10 - Improve world validation <Krakenied>
59dbcfb - Improve breeding task type 1.10+ versions support <Krakenied>
8cb5b45 - Set block variable before the loop <Krakenied>
4d61a74 - Add allow silk touch option Partially closes https://github.com/LMBishop/Quests/issues/499 <Krakenied>
2c36268 - Remove unnecessary import <Krakenied>
cbbb2fa - Bump paper-api to 1.19.4 <Krakenied>
ab318d1 - PlayerBlockTracker support Closes https://github.com/LMBishop/Quests/issues/499 <Krakenied>
1fb59f1 - Fix PlayerBlockTracker event calling order <Krakenied>
9b186a3 - Fix the event order after task types registration <Krakenied>
97e4ae6 - Fix and improve listener plugin comparing condition <Krakenied>
b110eae - Optimize TaskUtils#getApplicableTasks method <Krakenied>
04c62a2 - Update gradle to 8.0.2 <Krakenied>
04527a2 - Fix MMOItems and Mythic Lib repo <Krakenied>
34a84d7 - Fix CaveVinesPlant not being handled properly <Krakenied>
a37bb72 - Handle vehicles movement separately Closes https://github.com/LMBishop/Quests/issues/464 <Krakenied>
042368e - Add PlayerPoints support Partially closes https://github.com/LMBishop/Quests/issues/494 <Krakenied>
e45785c - Do not register BrewingTaskType for unsupported server versions Closes https://github.com/LMBishop/Quests/issues/503 <Krakenied>
cab640a - Fix frogs and turtles breeding <Krakenied>
b8ef517 - Fix build <Krakenied>
7f72147 - Update gradle to 8.1.1 <Krakenied>
330a71e - TaskUtils improvements <Krakenied>
2e3883f - Use matchEntity method in breeding task type <Krakenied>
4fa851f - Implement replenishing task type <Krakenied>
6f88c39 - Register replenishing task type <Krakenied>
9e7fb30 - Add support for shearing other entities (i.e. mushroom cows and snowmen) <Krakenied>
a77f978 - Building task type refactor <Krakenied>
3f029ab - Interact task type refactor <Krakenied>
b5d0db2 - Mining task type refactor <Krakenied>
e5e3e87 - Mob killing task type refactor <Krakenied>
c7a5e4e - More TaskUtils improvements <Krakenied>
8ba64ad - Command task type refactor More TaskUtils changes <Krakenied>
b8ede73 - Add nullability check <Krakenied>
97ab313 - Refactor mythic mobs killing task type <Krakenied>
189414e - Add missing condition <Krakenied>
4d19504 - Improve brewing stand player detection <Krakenied>
a848ab3 - Quest items refactor <Krakenied>
7e8328d - Add exact match option to brewing task type <Krakenied>
c306daa - Add exact match option to consume task type <Krakenied>
ada3f9a - Remove deprecation <Krakenied>
5b587a8 - Add exact match option to crafting task type <Krakenied>
2393dc0 - Add exact match option to fishing task type <Krakenied>
4211526 - Add exact match option to interact task type <Krakenied>
9a227de - Add exact match option to mob killing task type <Krakenied>
1880b7f - Add exact match option to smelting task type <Krakenied>
d9d2ed4 - Add exact match option to smithing task type <Krakenied>
e855c4b - Set exact match in TaskUtils <Krakenied>
5176fe2 - Improve getConfigBoolean method <Krakenied>
924bba7 - Use getConfigBoolean method <Krakenied>
0086abe - Do not color mythic mobs killing task type mob name Improve matchString performance <Krakenied>
0a78d93 - Add support for custom PlayerBlockTracker forks <Krakenied>
bf939b6 - Bump paper-api to 1.20 <Krakenied>
4949060 - Bump paper-api to 1.20.1 and HikariCP to 5.0.1 <Krakenied>
3755926 - Remove unnecessary deprecation <Krakenied>
a6d0369 - Improve breeding task type description <Krakenied>
6d1cd5f - Update gradle to 8.2 and shadow to 8.1.1 <Krakenied>
114d7c2 - Improve build workflow <Krakenied>
f2b6f3c - Improve inventory task type detection <Krakenied>
4c9a7d8 - Add exact match option to inventory and citizens deliver task types <Krakenied>
0aac85f - Migrate docs to GitHub pages <LMBishop>
a5395de - Update links to wiki <LMBishop>
fb1dda5 - Add missing task types to documentation <LMBishop>
112fe6c - Add ecobosses_killing task type <LMBishop>
8fd02cb - Fix missing dependencies for EcoBosses <LMBishop>
cc557de - Bump version number <LMBishop>

More information

3.13.3

by LMBishop on Feb 16, 2023
Download

This update is a largely technical one fixing a lot of bigs and issues. It fixes a duplication glitch with the crafting task type, some issues with the with the smelting, distancefrom, and farming task types, and a rewrite of the menu system. It also adds more granular permissions for commands, see the wiki page.

For further details on what has changed, see the commit log below.

Commit log since v3.13.2

84a4b07 - [ci skip] Add distribution status to README <LMBishop>
0d439ce - Fix IAE in DistancefromTaskType <Krakenied>
c5fb1a8 - Bump shadow from 7.0.0 to 7.1.2 <Krakenied>
41da82c - Bump gradlew from 7.4 to 7.5.1 <Krakenied>
0c738b2 - Fix jitpack being stupid <Krakenied>
2799ccf - Make authlib non-transitive to hide an IDE warning https://advisory.checkmarx.net/advisory/vulnerability/Cxeb68d52e-5509 <Krakenied>
94952f8 - Fix ShopGUI+ task types (breaking change) https://github.com/brcdev-minecraft/shopgui-api/releases/tag/3.0.0 <Krakenied>
e0c4292 - Improve build workflow <Krakenied>
e1cca69 - Use citizensapi instead of citizens <Krakenied>
446de98 - Add color check Part of https://github.com/LMBishop/Quests/issues/434 <Krakenied>
f80eb1b - Add missing config validators <Krakenied>
af4c850 - Remove redundant suppression <Krakenied>
fc2008a - Improve crafting task type Fixes https://github.com/LMBishop/Quests/issues/430 <Krakenied>
5d9a3d1 - Fix smelting task type as well <Krakenied>
6be8d85 - Fix smelting task type older versions startup error <Krakenied>
3574d27 - Use enhanced switch statement <Krakenied>
8ed5f8c - More crafting task type detection improvements Fixes https://github.com/LMBishop/Quests/issues/430 with ctrl pressed <Krakenied>
826da67 - Apply fixes to smelting task type as well <Krakenied>
41f0054 - Get task amount needed after checking the item <Krakenied>
5d7c0db - Move smelting task type item debug logging <Krakenied>
43588fe - Apply fixes to smithing task type too Add support for more than 1 result item <Krakenied>
0fea32c - Brewing task type rework Closes https://github.com/LMBishop/Quests/issues/434 <Krakenied>
242f8b9 - Optimize adding aliases - use Collections#addAll <Krakenied>
2ef1b89 - Remove unused imports <Krakenied>
b191d97 - Store menu elements in Int2ObjectOpenHashMaps <Krakenied>
03f8ab7 - Use pattern variables <Krakenied>
eb5d68c - Use Collections#max to find max element <Krakenied>
a2c013d - Optimize walking mode validation Lowercasing the mode is not needed because of a config validator <Krakenied>
c279b19 - Some build.gradle changes and updates <Krakenied>
3861112 - Fix MythicMobsKillingTaskType config validators not being added <Krakenied>
2152026 - Bring support for older ShopGUIPlus versions back Fixes https://github.com/LMBishop/Quests/issues/473 <Krakenied>
7cb36f6 - Optimize entity-related walking modes validation <Krakenied>
099519e - Optimize debug logging Fixes https://github.com/LMBishop/Quests/issues/452 <Krakenied>
bf20ca9 - Add block shearing task type Closes https://github.com/LMBishop/Quests/issues/416 <Krakenied>
606f421 - Optimize debug logging a little more <Krakenied>
2cad319 - Fix build badge <Krakenied>
5743352 - Add command permissions <snake>
c7bf2ba - Add option for automatically closing GUI (closes #480) <LMBishop>
7a18c1f - Refactor menu code <LMBishop>
52198a3 - Fixed result of PreStartQuestEvent not being used in further checks <Tom>
82af8a4 - Fix quests not being sorted <LMBishop>
bc11bfd - Some improvements to farming and block shearing task types <Krakenied>
bf186c0 - Additional material validation Closes https://github.com/LMBishop/Quests/issues/445, https://github.com/LMBishop/Quests/issues/349 <Krakenied>
1451820 - Legacy pattern doesn't detect § symbol <Tom>
579287b - Use version specific methods to get item in main hand <Krakenied>
bc8938a - Fix ArrayIndexOutOfBoundsException Do not show back menu element when category menu is null <Krakenied>
5a28efa - Bump version umber <LMBishop>

More information

3.13.2

by LMBishop on Aug 17, 2022
Download

This update adds a new smithing task type and fixes a couple of bugs. ShopGUI+ has been updated to their new API so please make sure ShopGUI+ is up-to-date before downloading this. Also, CoreProtect checks have been moved off the main thread to stop locking, however this may result in longer times for block breaks to count towards quests. Also, a bug concerning allow-partial-completion for inventory tasks has been fixed.

Commit log since v3.13.1

b0f75f4 - Add animal list to breeding task type <@LMBishop>
5a2b90c - Add interact task type (closes #401) <@LMBishop>
09ed287 - Change configuration key from animal to mob for breeding type <@LMBishop>
84eb73f - Remove BrewingCertainTaskType.java <@LMBishop>
f753a6c - Fix interact task type <@LMBishop>
2609d06 - [ci skip] Update Java version in README <@LMBishop>
43c204c - Remove default from allow-partial-completion (closes #413) <@LMBishop>
92aa72c - Run CoreProtect check async (closes #432) <@LMBishop>
f4b84d6 - Update ShopGUI+ version (closes #429) <@LMBishop>
2bc07a0 - Fix enchanting task type bug <@YoSoyVillaa>
01f1398 - [ci skip] Reword a couple of issue form questions <@LMBishop>
3c6a18a - Add smithing task type and fix mining CoreProtect bug <@YoSoyVillaa>
d709ab4 - Bump version number <@LMBishop>

More information

3.13.1

by LMBishop on Aug 17, 2022
Download

This update fixes a couple of bugs where the reverse-if-broken would not work properly for the blockplace task, and where the position task would incorrectly require an invalid option.

Commit log since v3.13

d35afe2 - Fix reverse-if-broken BuildingTaskType NPE <@Krakenied>
3642b3c - Remove invalid option from position task type <@LMBishop>
615aa14 - [ci skip] Update README.md <@LMBishop>
77ab390 - Bump version number <@LMBishop>

More information

External resources



Project members

LMBishop

Owner


Technical information

License
GPL-3.0-only
Project ID