Honeypot 1.3.1
Honeypot 1.3.1
This version simply ensures support for 1.18, as well as cleans up the code. I've also refactored most classes of the code to make it easier to read & maintain, and also to take advantage of some newer features in Java that I'm learning, such as records (This project is meant to be a learning experience for me as well!).
I'm working on adding SQLite support very soon and making some major upgrades to the way server staff interact with the plugin. Hopefully I can get an update out on this by Janurary/February 2022!
Please see below for the Honeypot 1.3 changelog
Honeypot 1.3
This version contains a locate command which will make it easier to find honeypot blocks for admins. Running it will find any honeypot block within a 5 block radius of the player. To find a list of all honeypot blocks on the server, you must still look at the config. This is a fair trade off to me, but if anyone would like this changes let me know. It also contains a PlayerJoinEvent listener to notify admins of plugin updates on join to prevent update messages being lost in the console. This is, of course, disable-able with permissions
Added:
* /honeypot locate command. This command works by summoning an invisible, invincible glowing slime inside the honeypot block. It is the exact same size as a block so it will look like the block is glowing. This, however, disables you from mining the block while it's there because it is just ever so slightly larger. The slime will live for 5 seconds before being removed.
* Added a function to notify staff of updates to this plugin on join.
* Added the honeypot.locate and honeypot.update permissions. Add these permissions to players to allow them to use /honeypot locate and be notified of updates on join, respectively. honeypot.*, as always, contains all of these permissions.
Changed:
* No major changes to this version, however in some future versions the storage methodology may be modified. JSON support will always remain, however in the future it may not be the default
To-Do:
* Update the block storage and player storage methods to be more efficient and less resource-intensive
Known Issues:
* There is an issue which involves creating honeypot blocks with less-than-full blocks in front of them (For example, a lever). Imagine you are a player (P) creating a Honeypot block (H) with a lever in front (L). It would look like this P-L-H. Because the lever is in between you and the Honeypot block, it creates the Honeypot block on the lever, even if you're targeting the Honeypot block. I am using player.getTargetBlock() so I'm not sure why Spigot's API is causing this issue. I will investigate further for an alternative option, but for now, please ensure every block between you and the Honeypot block is air, and not something like a button, redstone dust, lever, flower, grass, etc.
* Another known issue is if staff manually erase the honeypotblock and honeypotplayer config files and forget to leave the square brackets, the plugin will fail upon load. When modifying these config items, please do not erase the [], they must always remain for GSON to function properly.