Skip to content

Releases: WiIIiam278/HuskHomes

HuskHomes 3.2.1 - Bug fixes

01 Dec 11:37
10a3eeb
Compare
Choose a tag to compare

HuskHomes 3.2.1 is now available to address some outstanding issues present in v3.2, including some critical issues if you are using permission restricted warps.

  • Fixed an outstanding issue with permission restricted warps that prevented their use even if the user had the right permission node, courtesy of @Lorias-Aegorin (#280)
  • Fixed permission restricted warps not TAB completing correctly, even if the user had the correct permission (#273)
  • Fixed a placeholder not being correctly replaced on the free home limit warning (#278)
  • Fixed an issue that meant the pagination buttons on the home list menu would paginate through your own home list rather than the target users' homes (#274)
  • A number of improvements to the cross-server network messaging system have been made to improve system stability, particularly in cases where plugin message callbacks would fail with a dispatch error (#275)
  • Updated the Simplified Chinese (zh-cn) locales, courtesy of @ApliNi (#270)
  • Updated the Italian (it-it) locales, courtesy of @iVillager (#274)
  • Updated the German (de-de) locales, courtesy of @Ceddix (#269)

To update, just drag+drop. You may wish to regenerate your languages file if you're making use of the mentioned locales that received updates.

HuskHomes 3.2 - Bug fixes, QoL improvements, /rtp API rework

26 Nov 00:45
Compare
Choose a tag to compare

HuskHomes v3.2, although light on new features, is heavy on fixing various issues encountered by users in the previous version. Most noticeably, it adds a new config option to let /sethome and /setwarp commands overwrite, fixes issues and introduces new API for bulk-delete commands and makes significant improvements to the performance and API for random teleports.

  • Add an option to the plugin config to have homes automatically be relocated instead of the command failing when using /sethome and /setwarp with a home argument that matches the name of an existing respective home or warp. (#168)
  • Fixed a variety of issues where random teleport location generation would fail in many cases due to a flawed implementation of needed safe ground detection logic. Random teleport positions no longer cache and the setting for this has been removed.
  • Added a message informing players when they execute the /rtp command that the system is finding a position for them.
  • Fixed an issue where busy servers sending parallel plugin message requests would conflict with each other causing intermittency with cross-server teleportation features
  • Fixed an issue that meant players could access permission restricted warps without the requisite permission node
  • Changed the format of the permission restricted warps permission node for consistency (huskhomes.warp.<warp>huskhomes.command.warp.<warp>)
  • Fixed an issue that meant the "Teleportation complete" message would appear twice when teleporting cross-server
  • Fixed an issue that meant the wrong locale was displayed when teleporting other users to coordinates
  • Fixed the /tp and /tphere commands not working for users vanished by vanish plugins (#255)
  • Fixed an issue where if your teleport warmup time was set to 0, it would still treat the teleport as though it were a timed one, showing messages and restricting movement
  • Fixed an issue that meant the server could lock up when using /delhome all or /delwarp all (#265)
  • Fixed an issue that meant running /delwarp with zero arguments would throw an internal error (#264)
  • Fixed an issue where /rtp would sometimes put players inside blocks (#263)
  • Added support for RedisEconomy, courtesy of Ermibergo02 (#259)
  • Updated the Simplified Chinese (zh-tw) locales, courtesy of ApliNi
  • Updated the German (de-de) locales, courtesy of Ceddix
  • Updated the Italian (it-it) locales, courtesy of Villag3r
  • API (breaking): The Random Teleport API has been reworked. Hooks that work with the API in v3.1 will need to be altered to accommodate the new spec. Providers now need to simply supply an Optional<Position> rather than the previously complex approach.
  • API: Added new cancellable events for deleting all homes and deleting all warps. Note that the normal deletion events are not fired when a player chooses to delete all of their homes / warps.

To update from v3.1, regenerate your config.yml and messages.yml files. If you're updating from older versions, you'll need to follow the legacy migration instructions.

HuskHomes 3.1 - New teleport API, bug fixes & stability improvements

19 Oct 11:26
Compare
Choose a tag to compare

⚠️ You must regenerate your config file to upgrade to this version from v3.0.x! Upgrading from v2.11.2? Follow these additional instructions as well.

HuskHomes 3.1 introduces a new developer API for executing teleports, makes a number of stability improvements and fixes a few bugs.

  • Rewrote the internal teleportation handling logic for improved stability (see API section for what this means for developers)
  • Rewrote logic in a number of places to reduce future #join() calling to fix a few concurrency exceptions in some cases
  • Added a couple of new error handling locales for teleportation
  • Fixed a problem where the server name and player list could not be updated when a player joined, caused by plugin message dispatch occurring too soon after the user joined
  • Fixed a problem where /tpignore would still let you send teleport requests (#238)
  • Fixed a number of issues caused by the migration to adventure, including a few that broke compatibility with older versions. Adventure's Bukkit adaption layer is now bundled with HuskHomes.
  • Fixed a few issues with the way in which data was read from the config file (Annotaml)
  • Tweaked the default Hikari connection pool options
  • Updated the Traditional Chinese (zh-tw) locale with a few fixes, courtesy of @davgo0103
  • API: New developer API has been introduced for building and executing teleport operations
    • A new entrypoint for getting a TeleportBuilder, which you can convert into an executable Teleport or TimedTeleport, has been added to the API class
    • Old teleport methods that simply accept a Position have been deprecated.
    • Please check the javadocs for more information!

You must regenerate your config file if you're upgrading to this version from v3.0.x! Regenerating your messages file is also recommended. Thank you!

HuskHomes 3.0.4 - Bug fixes

21 Sep 21:12
Compare
Choose a tag to compare

⚠️ Upgrading from v2.11.2? Follow these steps!

HuskHomes 3.0.4 fixes more bugs that cropped up in previous releases, including an issue preventing random teleport cooldowns from working.

  • Migrated the locale system to MineDown-adventure and ported the plugin chat system to the adventure platform. The #getLocale method provided by the API has thus changed to return a MineDown-adventure object.
  • Fixed a bug where executing the /tpaccept and /tpdecline commands without specifying a player argument and without having any pending requests would cause an exception in console (#228)
  • Fixed a problem that meant the server name would not be properly fetched and cached in many cases in cross-server setups (#231)
  • Fixed a bug that meant anyone could create public homes regardless of them having the COMMAND_EDIT_HOME_PRIVACY node
  • Fixed a bug that meant certain values in the config file couldn't be edited (#220)
  • Fixed it not being possible to return by death with /back after you had respawned cross-server via the global respawning feature (#221)
  • Fixed an issue that meant viewing the private home list of another user would not update if they set an additional home (#222)
  • Fixed the error_edit_home_maximum_public_homes locale not having its' placeholder inserted
  • Fixed an issue that meant the return by death via /back prompts when respawning would still appear even if the base permission node for /back was not set (#234)
  • Fixed an issue that meant teleportation cancellation prompts would not respect the warmup message display config setting
  • Fixed an issue that meant the random teleport cooldown would not apply to users self-executing the command (#224)

This release requires an update for HuskHomesGUI (v2.0.1). Please update the GUI plugin too!

To update from v3.0.x, you should regenerate your messages.yml file (delete messages-xx-xx.yml in your /plugins/HuskHomes/ folder and drag+drop the jar file). If you are upgrading from 2.11.2, you will need to follow these steps.

HuskHomes 3.0.3 - Bug fixes & locale updates

18 Sep 15:27
Compare
Choose a tag to compare

⚠️ Upgrading from v2.11.2? Follow these steps!

HuskHomes 3.0.3 fixes more bugs and typos present in the previous releases and updates the German (de-de) and Traditional Chinese (zh-tw) locales.

  • Added TITLE and SUBTITLE as options for the position of the teleport warmup countdown indicator display
  • Fixed an issue where numerical permission-node based limits were not sorted correctly, leading to incorrect totals being calculated on servers with inheriting permission nodes (#213)
  • Fixed an issue where usernames that contain two or more adjacent underscores would be treated as MineDown formatting. Simple "markdown"-style formatting for MineDown is no longer supported or escaped (#210)
  • Fixed an issue where public homes and warps that had been migrated from HuskHomes v2 would stop displaying on map hooks (#215)
  • Fixed a typo in the edit warp menu locales that referred to warps as homes
  • Fixed an issue in the incoming teleport request accept/decline button prompts where the click event commands were not prefixed with the plugin namespace (huskhomes:)
  • Fixed an issue where the random teleport engine would still cache at least one position even if the number of positions to cache was set to 0
  • Newly created tables on MySQL will now enforce a character set and database engine on creation
  • Updated the German (de-de) locale, courtesy of @Ceddix
  • Updated the Traditional Chinese (zh-tw) locale, courtesy of TonyPak

To update from v3.0.x, you should regenerate your messages.yml file (delete messages-xx-xx.yml in your /plugins/HuskHomes/ folder and drag+drop the jar file). If you are upgrading from 2.11.2, you will need to follow these steps.

HuskHomes 3.0.2 - More bug fixes, tweaks

09 Sep 08:55
Compare
Choose a tag to compare

⚠️ Upgrading from v2.11.2? Follow these steps!

HuskHomes 3.0.2 fixes a few bugs, updates the Simplified Chinese (zh-cn) locale and makes a small API addition

  • Updated the Simplified Chinese (zh-cn) locales, courtesy of @ApliNi
  • Re-added bStat metrics collection for certain data points
  • Fixed an issue that meant the /back command was using economy action pricing for random teleportation
  • Fixed an issue that meant /tpdecline had the wrong command description in most locales
  • Fixed an oversight that made it impossible to customise the spacing of home, warp and command lists (#207)
  • Fixed an issue that could cause blocking errors that could crash the server in certain edge cases
  • Further optimised the random teleport generation system to reduce garbage generation
  • API: Added the ability to get whether a player is in a "teleport warmup" state

To update from v3.0, you need to regenerate your messages.yml file (delete messages-xx-xx.yml in your /plugins/HuskHomes/ folder and drag+drop the jar file). If you are upgrading from 2.11.2, you will need to follow these steps.

HuskHomes 3.0.1 - Bug fixes & locales

07 Sep 21:29
Compare
Choose a tag to compare

⚠️ Upgrading from v2.11.2? Follow these steps!

HuskHomes 3.0.1 is a bug fix update to address a few outstanding bugs present in v3.0.

  • Updated the Spanish (es-es) locales, courtesy of @Chiquis2005
  • Fixed a crash that could occur in exceptional circumstances when modifying or deleting a home or warp
  • Fixed excessive memory usage caused by problematic logic when populating the cache of potential random position targets on startup

To update from v3.0, just drag+drop the jar file. If you are upgrading from 2.11.2, you will need to follow these steps.

HuskHomes 3.0 - Rewrite, new menus, global respawning, new hooks, API & more!

06 Sep 14:14
Compare
Choose a tag to compare

HuskHomes v3 Splash

⚠️ Upgrading from v2.11.2? Follow these steps!

HuskHomes v3.0—the third major version of HuskHomes—is now available. It's a complete rewrite of the plugin which brings about a brand new backend database schema and system, an all-new frontend menu design and chat interface, new features, upgrades to existing ones, a new developer API and many small tweaks and improvements!

New menu browsing preview animation

New features & changes

  • The plugin menus have been redesigned—from list menus, to edit menus, to teleport request prompts. The brand new menus follow the same new design scheme used in HuskSync v2.0.
  • The navigation of home, warp, public home and command lists has been improved with new page jumper buttons on page footers
  • Commands now have new permission nodes for better consistency.
  • Permission nodes for bypassing checks have been changed for better consistency.
  • Added a permission node to let you bypass economy checks (#173)
  • Added a config option and permission node to let you limit how many homes a user can make public
  • Added a config option to disable sound effects altogether
  • Added a config option to enable/disable the "return-by-death" feature on the /back command that lets players return to where they died
  • Added a config option to determine whether players' last positions, used in the /back command, will be set when the TeleportEvent is fired for players, except by NPCs, for example by other plugins.
  • Added a config option to enable/disable strict /tpahere functionality
  • Added a config option to let you allow the use of unicode characters in home names and descriptions in aid of international users (#156).
  • Added the ability to enable global respawning on cross-server setups (#123). This is an experimental feature that tracks where players died globally and attempts to respawn them at their bed. You will need to set a local /spawn position on each server first, then enable this in the config file. It has some caveats/downsides/inconsistencies and will be improved in the future, but it should help server owners get a step closer to a seamless cross-server experience.
  • The plugin now accurately keeps track of online players in cross-server setups, meaning it is no longer possible to send teleport requests to invalid players. TAB completion has been improved as a result.
  • The random teleport command now uses a gaussian distribution algorithm to serve random locations with a better distribution. New config options have been added to let you fine-tune this to your liking.
  • The teleport command now lets you teleport a player other than yourself (/tp <player> [destination]). A new permission node has been added to restrict this.
  • It is now possible to teleport to—but not send teleport requests to—yourself with teleport commands
  • A permission node has been added for using the teleport command to teleport to a set of coordinates
  • The teleport command now accepts the @s selector for teleporting yourself, reducing friction when using vanilla commands such as the /minecraft:locate command.
  • The /tpall and /tpaall commands now inform you of how many players you have teleported/requested to teleport to you.
  • Commands are now offered with modern Brigadier rich syntax highlighting for users on Paper servers
  • Added a config section to let you disable commands. Commands added to the disabled_commands list will be unable to be used and show an error when you attempt to use them. This is useful for lightweight setups where you would rather not use a permissions plugin.
  • You can now view lists of a player's homes, server public homes, warps and commands through console
  • You can now randomly teleport a player through console (rtp <player>)
  • You can now execute teleports through console (tp <player> [target])
  • Warping a player through console now works for any player on the network in cross-server setups, not just online players on the server it was executed from.
  • You can now teleport a player to a public home through console (phome <player> <[owner_name].[home_name]>)
  • Added a hook with Plan (Player Analytics) that allows you to view some statistics about users' HuskHomes homes on your Plan web panel.
  • Dynmap: Updated the appearance of HuskHomes' Marker icons. Markers now also show the icon in the popup information box.
  • BlueMap: Updated the appearance of HuskHomes' Marker icons and updated to depend on BlueMap's v2 API, which brings support for newer versions of BlueMap.
  • Removed support for SquareMap/Pl3xMap due to poor stability and API inconsistencies following the original v1's discontinuation. Support for the new Pl3xMap v2 by the original author, will be re-added in the future when its' API is more stable.
  • Removed the ability to force-teleport a player to the spawn point, for now, due to compatibility issues.
  • Removed the config option to handle vanished players for implementation consistency; they are now always handled. Sending a teleport request to a vanished player will act as though they could not be found.
  • Removed the config section for configuring how TAB completions on cross-server setups works; the plugin now has new and more accurate tracking and caching of global player lists.
  • Removed the need to manually set the name of the server in the config file for users with cross-server setups. HuskHomes will automatically fetch and cache this to a server.yml file when the first user joins.
  • Removed the local spawn position section from the config file; this is now saved separately in a spawn.yml file. For global spawn positions on cross-server setups, a warp is still used as before.
  • Temporarily removed the collection of a few specific bStats metrics, to be re-added in a future update.
  • Fixed an issue that meant the SQLite database could get locked in certain circumstances (#148). HuskHomes's new database system now uses a single connection to SQLite databases and pooling for MySQL connections.
  • Fixed an oversight that meant home privacy toggle buttons would appear in the home menu even if a user did not have permission to do so. (#157)
  • Updated the Italian (it-it) locales, courtesy of Villag3r1. Locale files need updating for all other languages, though, as over 2/3rds of the locales have changed with the new menu scheme. If you'd like to help translate HuskHomes, please submit a pull request!

Teleport requests preview animation

Developers

  • A new Developer API (v3) has been added. Note that plugins that target HuskHomes v2 API are not compatible with HuskHomes v3.x due to the plugin being a complete top-to-bottom rewrite. The API is available on Jitpack. Please check out the new API docs and Javadocs for more information!
  • Added new API events for teleporting and viewing home lists, and renamed and updated old ones
  • Added the ability for developers to provide custom Random Teleportation engines to customise the functionality of the /rtp command.
  • The plugin is now built with gradle and has a modular, cross-platform design. Contributions welcome!

Add-ons & Placeholders

The following add-ons have been updated to support HuskHomes v3.x. Please download the new versions:

  • HuskHomesPlaceholders (the PlaceholderAPI expansion, available on the PlaceholderAPI eCloud) — v2.0+
    • Please note some placeholders have changed and others added. Please check the new list.
  • HuskHomesGUI (the GUI add-on plugin) — v2.0+

My other plugins, HuskBungeeRTP and HuskTowns will be updated in due course to make use of this new update. Please sit tight!

If you're updating from HuskHomes v2.x, please follow these steps to upgrade. HuskHomes v3.x has been designed to be as easy to upgrade as possible, so for most people this will amount to just dragging and dropping the plugin and deleting the old messages file.

The plugin documentation has been rewritten for v3.0—please have a read!

HuskHomes v3.0 supports Minecraft 1.16.5 - Minecraft 1.19.x

Thank you!

HuskHomes 2.11.2 - Bug fixes

21 Jan 01:41
Compare
Choose a tag to compare

HuskHomes 2.11.2 fixes a few bugs with previous versions and makes some optimizations for Redis users.

  • Fixes and improvements for users running HuskHomes via Redis
    • Fixed an issue where the Redis listener on would terminate unpredictably when trying to add a null set of invites (#130)
    • Fixed an issue where cross-server player list tracking would not accurately add joining players to the global player list
    • Updated the Jedis dependency and now a JedisPool is used to more optimally fetch connections
    • Added an option in the config file to allow for Redis connections to be established over SSL
  • Fixed /warp tab completion items not being hidden based on warp permissions even when the setting to hide them from the warplist was enabled (#129)
  • Updated HikariCP to 5.0.1 to fix an issue where the database connection pool could be drained in rare circumstances.
  • Miscellaneous refactoring

To update, just drag+drop. For Redis users, the new use_ssl config option should appear under redis_credentials in the plugin config.

HuskHomes 2.11.1 - Hotfix

17 Jan 18:32
Compare
Choose a tag to compare

HuskHomes 2.11.1 fixes an issue for users running HuskHomes' cross-server mode using Redis messaging

  • Fixed an issue where the shaded Redis dependency would cause conflicts and ClassLoader exceptions; it will once again be downloaded using Spigot's runtime library maven central downloading function.

To update, just drag+drop.