Skip to content

1.0 - Full recode

Compare
Choose a tag to compare
@SkytAsul SkytAsul released this 10 Dec 16:01
5828d44

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!
  • 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
  • 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 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