BeautyQuests

BeautyQuests

Plugin

An easy-to-use questing plugins, using intuitive GUIs and with extensive possibilities!

Server Game Mechanics

517 downloads
8 followers
Createda year ago
Updated5 months ago

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

1.0.2

by SkytAsul on Dec 29, 2023
Download
  • Fixed plugin not starting on 1.8
  • Fixed missing items and blocks on 1.20.3 and 1.20.4
  • Fixed impossible to edit min/max values for "random rewards"
  • Added support for PostgreSQL databases
  • Optimized WorldGuard integration
  • Added advanced "mustBeHighest" option for region requirement

1.0.1

by SkytAsul on Dec 10, 2023
Download
  • Fixed "scoreboard" requirement
  • Fixed some dialog lines not having placeholders parsed
  • Fixed outdated migration to DB algorithm
  • Fixed bugs when filling entirely a page of rewards or requirements
  • Fixed errors when running the plugin on Java 8
  • Updated translations
  • Added Finish and Danish translations
  • Added support for 1.20.3 and 1.20.4
  • Scoreboard scores at the right are no longer shown in those versions
  • Added some logging to understand issues with inventories
  • Fixed custom mob name and minimum level not being updated in the GUI while editing mobs to kill
  • Added a "DISABLED" mention to the "validation requirements" button of the "wait some time" stage
  • Fixed the NPC selection editor not working for "kill mobs" stage
  • Fixed error popping in console when scoreboards failed to enable
  • Made plugin extra resilient to lack of data for a stage
  • Added player selector support for pool start command
  • Fixed dynmap integration not working
  • Added offline modes to "play time" stage
  • Fixed item creator GUI not refreshing properly
  • Players cannot place quest items as blocks anymore
  • When setting "none" as the custom stage description, the stage will no longer appear in the scoreboard if there are other stages to branch with (this allows to make hidden stages)
  • Added some customization to the GUIs:
    • Previous page and next page buttons can now be configured separately as two configuration settings in the new "gui" section (see below)
    • You can now customize more deeply the page item, for instance, by adding custom model data to them
    • Added a new configuration setting "vertical separator" that can be used to remove the column of glass pane in most GUIs. This gives 5 more slots to show objects.
# - GUIs-
# Some options related to graphical user interfaces
gui:
  # Previous page item
  previous page item: ARROW
  # Next page item
  next page item: ARROW
  # Show a vertical separator made of glass pane between the items pane and the arrow buttons
  vertical separator: true

Here is an example of utilisation of the new options, as well as a texture pack and custom fonts: Image

  • Fixed issues with 1.20.2 (including scoreboard support)
  • Placeholders should now be parsed everywhere
  • Reworked quest selection GUI (the menu that appears when a player clicks on an NPC): the description, rewards and requirements of quests are now shown. It is also now more configurable:
# - Quest selection -
# Options related to the behavior when a player click on an NPC which has associated quests
questsSelection:
  # If enabled, the "choose a quest from this NPC" GUI will not open if there is only 1 quest attached to the NPC
  skip gui if only one quest: true
  # Hide quests from the GUI if the requirements are not met
  hide quests without requirement: true
  • Fixed blockdata editor not working
  • Fixed particle GUI not showing up-to-date data
  • Fixed /quests edit not working properly when clicking on an NPC
  • Fixed /quests edit not working properly when editing a quest with branches
  • Added support for ZNPCsPlus 2.0

Changelog

Code-wise:

  • Completely separated the api, the features and the integrations in different modules. This will help future development, and will make extension development easier for external developers.
  • Rewritten most of the plugin to allow more flexbility in future features. This means cleaner code, less bugs and hopefully a performance boost!
  • Deployed javadocs and sources artifacts of the API on the Maven repository

NPCs integrations:

  • Having an NPC plugin is no longer mandatory to use BeautyQuests :) This means anybody can now simply download the plugin and run it without any dependency to add.
  • You can now have NPCs from multiple NPCs plugins. For instance, some of your NPCs come from Citizens, and some others from ZNPCs. Changed how most stages handle progress:
  • all stages that have some kind of progress can now have a progress bar (e.g. "eat food", "craft items" or "play time")
  • you can now configure much more finely the description of stages with progress in config.yml
  • added integration for ZNPCsPlus
  • upgraded support for ZNPCs from 3.6 to 4.2

Placeholders:

  • All placeholders in strings are now named and no longer indexed.
  • For instance: Level {short_level} for {job_name} replaced Level {0} for {1}
  • This is 1. much more easier to understand when translating the plugin
  • And 2. an amazing thing to allow much more personalized messages, because there are now many different placeholders for every message.

Rewards/requirements

  • By popular request, the remove button for rewards and requirements from middle-click to shift + left-click :)
  • Added a way to configure the reason sent in the chat when a player wants to start a quest but does not meet a requirement
  • Added a way to configure the description of rewards and requirements in the quest description shown in the menu
  • Fixed issue with requirement reason order

Image showing a quest in the menu with custom rewards and requirements descriptions

Misc. changes:

  • The GPS integration has been removed and is now a tracker in the expansion
  • The skillAPIoverride config.yml option has been deleted. Instead, a new reward type has been created: "SkillAPI XP Rreward"
  • Placeholders are now parsed by default in command rewards
  • Checkpoints are now using the "quest flow" feature to follow the path players have taken during the quest
  • Changed middle-click to shift-left-click to remove items from GUIs
  • Added %beautyquests_quest_restartable_ID% placeholder to get whether a quest is restartable or not
  • Added support for 1.20, 1.20.1 and 1.20.2
  • Added MMOItems item comparison
  • Fixed multiple exceptions
  • Fixed an issue with the "parse placeholders" option of "write in chat" stage not working
  • Added "max messages per history page" dialog option in config.yml
  • Changed some quest pool give logic, this will probably fix issues with the "avoid duplicates" pool option. This will also allow users to use the "yes/no" GUI to accept or not quests from the pool!

Warnings

This is a beta. Because there are more than 30'000 lines of code that has changed, precaution must be taken. Do not use this version on a production server. Make a backup before upgrading. Expect your integrations to break. Extensions will break (BeautyQuestsAddon for instance, but I'm working with its author to update is quickly). Once you've upgraded to 1.0, you cannot go back to 0.20 or 0.21. If you are using the expansion, PM me so I'll send you a compatible version.

I did my best to make all migrations happen automatically, but some points of caution must be taken:

  • some strings will look weird, because of the placeholders system that has changed. Your best bet is to completely delete the /plugin/BeautyQuests/locales directory before upgrading.
  • because you can now have multiple NPC plugins, the format in which the npc ids are stored has changed. Migration should happen automatically, but you may have some warnings in console if NPCs are nowhere found.
  • as previously stated, the skillAPIoverride option has been deleted. If you've been using it, you must therefore replace your "vanilla" XP rewards with the new SkillAPI XP reward.
  • many options in config.yml have been renamed or moved. It should happen automatically but... who knows? Backup config.yml as well!

Changelog:

  • Added support for 1.19.3 and 1.19.4
  • Added lot of debug logs for player data loading
  • Updated lot of translations, added Brazilian Portuguese translations
  • Added the {3} placeholder for stageDescriptionItemsSplit.amountFormat config option. It represents the progression as a percentage.
  • Added "skip npc gui if only one quest" config option, which defaults on "true"
  • Added "hide unknown quest placeholders" scoreboard config parameter, which allows to hide lines such as ones containing the {quest_time_limit} placeholder from the Expansion when the current quest does not have a time limit
  • Made block type name customizable for Mine/Place blocks stages.
  • Helpful when using block tags such as minecraft:iron_ores, now you can have the counter with a pretty name such as "Iron Ores".
  • Refactored how stage with progression work internally (kill mobs, eat/fish/enchant/melt items, place/break blocks).
    • Code is now cleaner and will allow more customization in the future.
    • Migration will happen automatically.
    • Once quests are migrated, there is no way to come back unless you restore a backup.
    • Updated "kill mobs" and "mine/place blocks" stage edition GUIs to allow more than 8 mobs.
  • Added "ItemsAdder ID" item comparison for "bring/craft/melt/enchant/fish/eat/drink items" stages
  • Added "none" keyword to the "asking message" editor for "bring items" stage
  • Internally reworked data management to be handled fully asynchronously => it will prevent the server from crashing when the database connection is lost :)
  • Added the /quests pools start <player> <pool> command
  • Moved /quests resetPlayerPool to /quests pools resetPlayer

Fixes:

  • Fixed issues in 1.8
  • Fixed "quest limit" feature not working correctly
  • Fixed issues with "quest stop" reward for branches
  • "region exit" stage is now working correctly with WorldGuard 7
  • Fixed WildStacker on 1.8
  • Fixed bugs with "fill buckets" stage
  • Fixed scoreboard not being used at its full width
  • Fixed hex colors not working in scoreboard
  • Fixed equipment requirement not checking item amount
  • Added database auto-reconnect option
  • Potion of the Turtle Master is now correctly displayed in stage description
  • Made logger file encoded in UTF-8
  • Improved TPS by a lot when using znpcs

Full Changelog: https://github.com/SkytAsul/BeautyQuests/compare/0.20...0.20.1

  • Added support for Minecraft 1.19.3
  • Fixed an issue with interact stages on 1.8 preventing users from saving quests
  • Fixed "quests limit" feature not working
  • Fixed BlueMap and dynmap not being properly disabled if the config values are empty

First release on modrinth!

Difference with dev build #344:

  • Added LevelledMobs integration
  • You can now choose the target level of mobs to kill from the MythicMobs and LevelledMobs plugins
  • Added WildStacker integration: when killing a whole stack of entities, all of the mobs are now counted for the quest

External resources



Project members

SkytAsul

Owner


Technical information

License
Project ID