Honeypot 3.0.0
This version adds many new features, fixes some bugs, and ensures support for 1.20!
PLEASE NOTE this is a snapshot build, and does not include all the features promised for 3.0.0. However, it is still stable! Feel free to use it in production.
Core
Additions:
- Added a new developer feature called Behavior Providers. Behavior Providers allow developers to add completely custom behavior to any Honeypot. View the wiki for more info!
- Behavior Providers will show up as options in the GUI and in the create command just like custom actions. Behavior Providers will take priority over custom actions as well, if the names clash. Behavior Provider names, however, must be unique.
- Behavior Providers must have a custom icon defined by the developer, and this icon will show up in the GUI. This makes it easier to identify your actions (For example, the built in "Kick" behavior provider is Leather Boots).
- Added InventoryMoveItemEventListener. This event listener prevents Hoppers and Droppers from dumping items into Honeypots as a way to prevent griefing via item spam.
- Added some extra logging to help with fixing issues later on.
Changes:
- Creation command now no longer asks if you want to use built-in behaviors or custom ones. They are all in one list, simplifying the creation of Honeypots.
- On the same lane of thought, the GUI now does the same
- Fixed bug with /honeypot history causing console errors if ran without subcommands
- The API is now packaged with the core plugin. Having it separate was nice at first, but it just got more frustrating the further along I went. Just change your dependency from honeypot-api to honeypot-core, nothing else will need changing because, quite frankly, I'm amazing lol (JK, the API always was shaded into the main jar anyway, so the package names were always the same regardless. That's why you had to use the API for development but the core plugin for your server, and it worked just the same).
Removals:
- Removed /honeypot upgrade command. Bstats shows that no one is using old versions anymore, so that function is obsolete
- Removed unused translations as a result of the removal of the upgrade command.
- Removed the "nothing" Honeypot. It was pretty useless IMO, no need for it.
Known Bugs:
- If a player spam clicks an item in a Honeypot, it may still be placed. I am trying to figure out why this is the case, but I think it's a race condition.
API
Changes:
- The API is packaged with the honeypot-core file now, it is not a separate file.
Removals:
- Individually packaged API is no longer available
Nerd info
MD5 checksums:
- 477c0aa8f78754d3f2ab062b07a98b70 honeypot-core-3.0.0-javadoc-SNAPSHOT-1.jar
- 77acc322f6c6343e4ee0b1fa087ea4e0 honeypot-core-3.0.0-sources-SNAPSHOT-1.jar
- 8b7c17a9138ac6550635dc86b8c80364 honeypot-core-3.0.0-SNAPSHOT-1.jar