Skip to content

Releases: BetonQuest/BetonQuest

BetonQuest 2.1.1

09 May 18:23
564d1e4
Compare
Choose a tag to compare

Fixed

  • math variable with dots (since 2.1.0)

BetonQuest 2.1.0

09 May 17:08
3a04174
Compare
Choose a tag to compare

Changed

  • player variable
    • %player% is now the same as %player.name%
    • %player.name% will display the name of the player
    • %player.display% will use the display name used in chat
    • %player.uuid% will display the UUID of the player
  • marking of mobs now uses variables in all contexts of spawning killing and removing
  • marking of mobs is now stored in the persistent data container of the entity to prevent loss on server restart
  • default default_conversation_IO in config from menu,chest to menu,tellraw
  • corrected Russian messages in messages.yml file

Added

  • block objective now supports parameters loc and region to limit the area
  • block objective now supports the parameter ignorecancel allow counting breaking / placing blocks in protected regions
  • command variable to list and modify variables on a variable objective
  • config option conversation_IO_config.slowtellraw.message_delay to set the delay between messages in the SlowTellRaw conversation IO
  • resourcepack objective - to allow checking when the player accepts, denies, downloads, or fails to download a resource pack
  • region objective now supports variables as region name
  • location objective now allows entry and exit keywords to track entering and leaving the location
  • allowing adjustment of maximum hologram display radius
  • support to execute BetonQuest commands from command blocks

Fixed

  • variable objective loads newlines correctly
  • exception in lookAtBlock condition when omitting the type
  • MMOCoreClassCondition, MMOItemsGiveEvent, MMOItemsHandCondition and MMOItemsItemCondition now work with numeric identifiers
  • yaml multiline instructions could lead to partly working events, conditions and objectives
  • creation of advancement tab when an advancement NotifyIO is sent
  • burn event throwing unexpected error when omitting duration
  • added missing firework meta to string representation of QuestItem
  • required flags in QuestItem were not relevant in equals check
  • folder event did not respect the sync / async context that it is executed in
  • incorrectly measuring the distance between player and hologram if they are in different worlds
  • incorrect calculation of the width of strings when using some special characters when doing pagination
  • previously undocumented quoting in instructions

BetonQuest 2.0.1

24 Mar 09:56
e722147
Compare
Choose a tag to compare

Changed

  • Quests by PikaMug got updated from version 4.X to 5.X
  • The ProtocolLib dependency was downgraded from 5.2.0-SNAPSHOT-679 to 5.0.0-SNAPSHOT-636

Added

  • hunger event now supports variables
  • time event now supports variables and new ticks argument

Fixed

  • weather event did not use duration
  • lever event does not work with redstone
  • papers future remove of CB package relocation

BetonQuest 2.0.0

31 Dec 21:28
5e5fc21
Compare
Choose a tag to compare

Added

  • Logging
    • Ingame logging
      • Logging during /q reload
    • New command /q debug ingame
    • Debug logging to separate file
    • Log history length can be freely configured
  • Quest Templates
    • A new folder QuestTemplates can now be used to define templates for packages
    • templates can also extend templates
  • add AureliumSkills Compatiblity
    • added AureliumSkillsLevelCondition
    • All existing users must add aureliumskills: 'true' to their config.yml's hook section.
    • added AureliumStatsLevelCondition
    • added AureliumSkillsLevelExperienceEvent
  • add DecentHolograms Compatibility
    • holograms from DecentHolograms are a direct alternative to HolographicDisplays
  • add LuckPerms context integration for tags
    • All existing users must add luckperms: 'true' to their config.yml's hook section.
  • add FakeBlock Compatibility
    • added fakeblock event that has the arguments showgroup and hidegroup to show and hide FakeBlock groups
    • added hook.fake-block config option, default: true
  • add RedisChat Compatibility
    • added redischat chat interceptor
  • added Event Schedules to replace old static-events system
    • static events from schedulers now respect static conditions
    • events called by schedules are always called player independent
    • runForAll event can now be used to run events for all players that match a condition
    • runIndepent event can be used to run events static (player independent) from player dependent contexts
  • added support for Base64 encode custom heads
    • can be created from items in inventory using the BetonQuest item command (Paper only, Bukkit/Spigot can be configured manually)
    • can be given to players using the BetonQuest give command
  • NotifyIO "totemIO"
  • Support for MythicLib
  • player attribute to QuestCompassTargetChangeEvent
  • added PlayerObjectiveChangeEvent, PlayerJournalAddEvent, PlayerJournalDeleteEvent
  • Allow %player% variable for PLAYER_HEAD quest items
  • allow access to objective variable properties from other packages
  • allow point variables from other packages
  • API method in objective API that starts and stops it per player
  • config option default_hologram to set hologram priority if multiple hologram plugins are loaded at once
  • config option journal.show_in_backpack to remove the journal from the backpack
  • config option journal.lock_default_journal_slot to lock the journal to the default_journal_slot
  • config option journal.give_on_respawn to add the journal to the inventory after the player respawns
  • config option journal.custom_model_data to give the journal a ressource pack based skin
  • config option mysql.reconnect_interval to set the reconnect interval if the connection to the database gets lost
  • compass now supports items from other packages
  • new messages.yml entries inventory_full_backpack and inventory_full_drop to have more specific messages,
    when the inventory of the player is full
  • menu conversationIO option npc_name_newline_separator
  • added q download command
  • variable support for menu titles
  • configurable cooldown to menu conversation IO
  • holograms
    • variable support
    • top lists ordered by point values of players
    • npcs list now supports global variables as NPC ID in NPC Holograms
  • menus now support global variables
  • exposed the Citizen variable and enhanced location capabilities
  • menus now support string with newline or string list text values for lore
  • amount of objectives now support variables
  • added quest item flag recording and restore
  • Conversations now support cross conversation pointers to conversations in other packages
  • QuestCancelers can now be referenced across packages
  • Chat Interceptor packet is now 1.20.4 compatible
  • freeze event - ProtocolLib compatibility feature: Blocks the player from moving for the specified amount of ticks
  • block objective - properties: absoluteAmount, absoluteLeft and absoluteTotal
  • command objective
  • equip objective
  • delay objective - now support variables
  • sudo event - now supports variables
  • opsudo event - now supports variables
  • variable condition - now supports variables
  • bossbar notify style now supports variables for the progress and stay arguments
  • delay objective property: rawSeconds
  • fish objective now has hookLocation and range settings.
  • consume objective now has amount argument.
  • mmoprofessionlevelup objective can now check the main character level as well
  • burning condition
  • inconversation condition
  • language condition
  • heroesattribute condition - Heroes compatibility feature: Checks a player's level for a particular attribute against a value
  • variable condition - regex can now also be a variable
  • mmspawn event now has argument target Makes the spawned mob target the player
  • mmspawn event now has argument private Visually hides the spawned mob from other players. Does not stop sound or particles
  • mmspawn event now supports the marked argument
  • objective event now supports a comma separated list of objectives
  • mmobkill objective now supports the marked and deathRadiusAllPlayers argument
  • marked argument now supports %player% variable
  • globaltag and globalpoint variables
  • burn event - ignites player for given seconds, supports variables
  • velocity event - throws the player by a vector (can be variable) with a direction and modification
  • block objective - added argument noSafety which disables removing progress when the player does the opposite of what the objective asks for
  • block objective - added property variables absoluteLeft, absoluteTotal, absoluteAmount that always return absolute values
  • hunger condition and event
  • variable condition - forceSync argument forces the condition to be checked on the main thread
  • variable condition - now supports variables as both the input and the regular expression
  • command event - now suppress console output
  • cancelconversation event
  • time event - now supports subtraction and world selection, which made it persistent and static
  • globalpoint event - new syntax for manipulating global points
  • experience event - it's now possible to change xp, change and set levels and set the xp bar
  • deleteglobalpoint event
  • score event - more options for manipulating the scoreboard
  • item variable - new name and lore argument and now supports items from other packages
  • randomnumber variable added - supports variables
  • give event - new backpack argument to place items in the backpack (if a valid QuestItem)
  • party event - new optional amount of maximal affected players
  • drop event
  • itemdurability event, condition and variable
  • numbercompare condition
  • cancelOnLogout argument for folder event
  • npcinteract objective - now supports the argument interaction to choose between left, right or both clicks
  • log event
  • party event - new range 0 and -1 to select players in the same world or server wide
  • stage objective, condition and event
  • first event - attempts to run a list of events until one successfully runs, like a compressed if event

Changed

  • Java 17 is now required
  • changed package names from pl.betoncraft.betonquest to org.betonquest.betonquest
  • Changed quest package structure
    • Quest packages are now searched and loaded from the folder BetonQuest/QuestPackages/
    • Quest packages can now contain more quest packages in sub folders
    • Relative paths can now navigate downwards and not only upwards
    • main.yml was renamed to package.yml
    • Any file and folder structure with any file and folder names is now allowed, except package.yml, as that file
      indicates a quest package
    • events, objectives, conditions, journal and items are now defined in a config section matching their
      names
    • conversations and menus are now defined in a config section matching their names and a unique identifier like
      the file name before
    • The enabled boolean is now defined in the package section
  • all objectives that can be advanced without directly completing now support notify
  • all objectives that can be advanced without directly completing now support left, amount and total variables
    • the left and amount variables of some objectives were swapped and have been corrected: left is the amount
      left, amount is the amount done
  • NPC Holograms are reworked
    • individual refresh rate for each hologram
    • the boolean follow is now set per hologram
    • the vector offset origin has been changed. The hologram is now directly above the NPCs head by default. This means all previously custom vectors are now increased by 3 blocks on the y-axis.
    • npc_effects are reworked
      • the section changed its naming from npc_effects to effectlib
      • the section disabled got removed
      • the section check_interval is now an inner section of the effect and now called checkinterval
      • next to the npcs section there is now an locations section
      • effects will now follow npcs if they're pathing to another spot
  • AureliumSkills updated to version Beta1.2.5
  • PikaMug Quests updated to version 4.1.3
  • Items now support AIR
  • Menus now support new click options shiftLeft, shiftRight and middleMouse to execute events on item clicks
    • Therefore left and right in the click section no longer include shift clicks
  • folder event - now executes events immediately if no delay is set
  • weather event - now has an optional variable duration (in seconds) and an optional world param
  • paste event - can now be static
  • chestput objective - can now block other players from accessing a chest whil...
Read more

BetonQuest 1.12.11

25 Dec 20:10
2899521
Compare
Choose a tag to compare

Changed

  • the MythicMobs integration was updated to MythicMobs 5.3.5
  • the MythicLib integration was updated to MythicLib 1.6-SNAPSHOT
    • the objectives mmocorecastskill and mmoitemcastability were merged into the mmoskill objective
  • the MMOCore-API integration was updated to MMOCore-API 1.12-SNAPSHOT
  • the MMOItems-API integration was updated to MMOItems-API 6.9.4-SNAPSHOT

Fixed

  • conversation could have a deadlock and a player can get stuck in a conversation
  • conversation could not be canceled due to a race condition
  • JobsReborn ObjectivePaymentEvent couldn't be used
  • ProtocolLib warning for Minecraft 1.20.2

BetonQuest 1.12.10

18 Feb 18:16
7e7f2e9
Compare
Choose a tag to compare

Fixed

  • ProtocolLib's based packet interceptor was fixed for MC 1.19, now ProtocolLib 5.0.0 is required
  • conversation IO chest did not show the correct NPC heads
  • objective event - static calls did not remove the objective for online players
  • legacy §x HEX color format not working in some contexts
  • eating of items when entering the chest conversation io actually consumed the item

BetonQuest 1.12.9

22 Jun 09:48
dce358c
Compare
Choose a tag to compare

Fixed

  • weather event - storm did not work
  • 1.19 ProtocolLib warnings about deprecated packages

BetonQuest 1.12.8

07 Mar 16:04
cae1085
Compare
Choose a tag to compare

Changed

  • PikaMug Quests updated to version 4.1.3

Added

  • new line support for journal_lore in messages.yml

Fixed

  • reload with an invalid PlayerHider causes a NPE
  • QuestItems could be eaten, this was caused by a changed mc behaviour
  • command, sudo and opsudo events didn't work with conditions
  • interact objective did not work with armorstands
  • MMOItemsGiveEvent did not check if item actually exists
  • notify IO subtitle and title with only a subtitle was not send
  • npcHider not working for Citizens with ModelEngine trait

BetonQuest 1.12.7

11 Dec 20:35
Compare
Choose a tag to compare

Security

Fixes

  • exception during reload, when npc_holograms are disabled
  • entities condition and clear event now support not living entities
  • mmoitems item creation only worked with uppercase id's

BetonQuest 1.12.6

14 Oct 20:59
509be39
Compare
Choose a tag to compare

Added

Changed

  • action objective cancels now the event, before other plugins check for it (better third-party support)

Deprecated

Removed

Fixes

  • added missing config options to the default config
  • version check for ProtocolLibIntegrator
  • quest item empty name comparison
  • customized built-in messages that use the advancementIO
  • BlockSelector without a namespace but starting with : did not work and threw an exception

Security