- Fixed console spam caused by Paper ItemStack#isEmpty change for people not on the latest version
- Nested chains now support their own Conditions, Mutators, Filters, and generic arguments like 'chance', 'repeat', 'cooldown', etc.
- Fixed color parsing in run_command and run_player_command
- Fixed plugin not starting up on paper 1.17.1
- Fixed standing_on_block not working for non full-height blocks
- click_entity trigger now only fires for living entities
- Added is_falling condition
- Added is_flying condition
- Added is_boss filter to replace only_bosses and only_non_bosses
- Fixed play_sound
- API: Improved SlotType to be more general-purpose
- Fixed deprecation messages not being sent. You may get warnings in console when updating, just update your configs with what the warnings say
- Fixed set_item_points not working in most situations
- Fixed set_custom_model_data not working in most situations
- Fixed item_durability_above and item_durability_below filters not always working as expected
- Added set_armor_trim effect (Thanks Sen!)
- Added vicitm_speed_multiplier (Thanks Sen!)
- Fixed AOE not working properly (Thanks Sen!)
- Fixed age_crop not working (Thanks Sen!)
- Removed "Effects >" prefix for cooldown, cost, and others
- Improved some default messages in lang.yml
- Added custom effect arguments, read here for more information: https://plugins.auxilor.io/effects/custom-arguments
- Fixed server crash bug
- (For debugging) Added ability to put libreforge.jar (with no version) into /plugins/libreforge/versions to force it to load
- (API) Added Effects.compileChain without specifying an executor
- Stopped shading minimessage, fixes bugs on 1.17
- Fixed brew trigger, again (Thanks OfTeN!)
- Fixed custom run_order not working
- Added left_click_npc and right_click_npc triggers (Requires Citizens)
- Added npc filter (Requires Citizens)
- Added run_order argument to all effects to override the default order in which effects run. This isn't needed in most circumstances and may cause unintended behaviour if used incorrectly, however it can be used (for example) to make add_damage run before damage_multiplier.