
eco 6.75.2
Powerful spigot development library that supercharges your plugins
- Fixed underflow bug with shift-clicking stacked recipes (Thanks Casper!)
- Switched SkullProxy NMS Implementation off to use lazy initializers (Thanks Racci!)
- Fixed internal Profile saveAll method causing bugs
- Updated shadow to 7.1.2
- Added entity arg parsers for equipment slots: head, chest, legs, feet, hand, off_hand
- Deprecated SlotModifier, replaced with SlotUpdater
- Player-only commands can now have non player-only subcommands
- Added kotlin ubilder for commands and PlayerUtils#runExempted
- Added kotlin extensions for NumberUtils
- Renamed FastItemStack methods, deprecating old names
- Added more kotlin utilities for lists and NamespacedKeys
- Added safer NamespacedKey creation, used in FastItemStack to mitigate broken keys
- Deprecated and marked requirement system for removal
- Deprecated TeamUtils#getMaterialColorTeam
- Changed Proxy error handling to be more consistent and understandable; Deprecated UnsupportedVersionException in favour of UnsupportedVersionError, changed ProxyError from Exception to Error
- Improved durability utils
- Added props system: instead of specifying plugin properties in the constructor, you can now opt to use eco.yml - check the eco source code (eco-core/core-plugin) to find out how to use it; also added EcoPlugin#mutateProps to enforce certain properties for libraries such as libreforge
- Deprecated MaskMaterials in favour of MaskItems
- Added more utility methods to Items
- Updated build logic to move kotlin to root project, updated to kotlin 1.6.10
- Fixed several javadoc issues
- Fixed several minor errors and tweaked internal naming
- Added API extensions in Kotlin for: Utility Classes, FastItemStack, Profiles (Data), and GUI (type-safe builders)
- Added option to display extension load stack-traces for developers
- Various misc changes
- Added RPGHorses Integration (Thanks OfTeN!)
- Fixed WorldGuard integration (Thanks OfTeN!)
- Added silent arg parser for entities (Thanks OfTeN!)
- Added caches for JSON <-> Legacy conversion, Placeholders, and String lookups with Caffeine
- Fixed CrashClaim integration not being loaded
- Added ServerProfile to store persistent data on the server
- Rewrote Custom Recipe listener in Kotlin, finally removing the last bit of java from the backend
- Added CustomCrafting support (Thanks OfTeN!)
- Rewrote Item cache to use Caffeine, removed ttl option from config
- Improved performance of ShopGUI+ Hook by improving custom item cache (Thanks NicoNeko!)
- Switched PersistentDataKeyType from an enum to a functionally indentical class with static fields (in order to infer types better in kotlin)
- Reworked backend of NamespacedKey creation: to get around the slow performance of the NamespacedKey constructor, eco will now use Objenesis to create a blank key and then set the fields reflectively - this is potentially unsafe, and so there is an option in config to disable it (however that shouldn't be a problem unless you royally screw up your config)
- Disabled async-display.ratelimit by default
- Improved stability of async display: packets now deep clone the itemstack rather than shallow cloning the packet, and packet sending is now ran catching and errors (if any) should be logged properly
- Added ExecutableItems support (Thanks OfTeN!)
- Added CustomCrafting support (Thanks OfTeN!)
- Fixed DropQueue giving the wrong amount of experience while telekinetic (Thanks OfTeN!)
- Improved performance of Items#isCustomItem and Items#getCustomItem (Fixes ShopGUI+ Lag)
- Placeholders should now specify a plugin
- Removed arg parsers marked for removal several versions ago
- Added support for evaluating mathematical expressions via Crunch
- Fixed use of commons lang3 over bundled 2.6
- NumberUtils changes
- Added Config#getDoubleFromExpression and Config#getIntFromExpression
- Kotlin codestyle
- Improved various safety checks
- Improved stability of async display by sending packets synchronously after modifying async
- Fixed v1_18_R1 Remapping bugs with FastItemStack
Sorry for the two back-to-back updates today, I don't like pushing eco updates on people