Skip to content

Releases: WiIIiam278/HuskTowns

HuskTowns 2.6 - Relations, Wars, Quality-of-Life & More!

25 Nov 18:11
cf9bacc
Compare
Choose a tag to compare

Note: To upgrade to this release from v2.5.x and earlier, please regenerate your config.yml and messages-xx-xx.yml files. If you haven't modified them from the previous default, you should also regenerate rules.yml and roles.yml; otherwise, don't forget to add the new wartime rules / action privileges to their respective files!

HuskTowns 2.6 is a major release of HuskTowns adding Town Relations (ON by default), Town Wars (OFF by default), and several useful quality-of-life features for both players and admins. It also fixes a number of bugs, adds a new API event, and updates locales.

  • Added Town Relations (#334)
    • Towns can now mark other towns as an "ally" or "enemy" to manage a list of relations
    • Command for managing relations is /town relations [list (town)|set <ally|neutral|enemy> <other_town>]
    • The MANAGE_RELATIONS privilege (default role: Trustee) is required to manage town relations.
    • This system can be turned off in config.yml. It is ON by default.
  • Added Town Wars. This feature is currently experimental and a work-in-progress — please send in your feedback! (#334)
    • Allows towns which have marked each other as an "enemy" to go to war
    • Command for managing war is /town war <accept|declare|surrender|view>
    • This system can be turned on in config.yml. It is OFF by default, and requires town relations to also be ON.
    • A town can declare war on another town, and specify a wager; the victor of the war will have the wager added to their coffers
    • War declarations work cross-server, but the war battle itself will take place on the server the defending town's spawn is set.
    • The DECLARE_WAR privilege (default role: Mayor) is required to send or accept declarations of war.
    • When a war declaration is accepted, the town that declared war will be teleported. All members of the defending town will be teleported to their spawn.
    • Participants in a war are removed from the war if they are killed (or otherwise die) and if they leave a configurable radius of the defending town's spawn.
    • During a war, special war flags apply on the defending town's claims. You can customize these flags depending on your particular flavor of chaos — allow full destruction, or lock down to just allowing PvP!
    • A town loses a war if they no longer have any online war participants. If three hours elapse or if the server restarts, the war will be declared a stalemate (both towns will lose their wager if this occurs). Towns can also surrender a war with /town war surrender.
    • The status of a war is displayed in the Boss Bar (which will display the remaining war participants to defeat) as well as in the war overview menu /town war (which will show a text-based graphic bar indicating the current balance of an active war)
    • A town cannot declare war again for another 48 hours (this cooldown is configurable)
  • Added a new admin command for managing town balances: /admintown balance
    • Lets admins set, add, or remove money from the coffers of towns
  • Add town points as fallback currency for servers without Vault (#342)
    • If Vault is not installed/detected, the currency used for towns will be an integer-based "Town Points" (example format: 100pts)
    • Town points can be added to towns with /admintown balance (add|remove|set)
    • Town points can also be earned as part of advancement rewards
    • This lets servers not using an economy use HuskTowns standalone and award points to towns through other means, to allow towns to level up
  • Town members can now self-claim vacant plots (#369)
    • To do so, members can simply stand in a vacant town plot and type /town plot claim
    • This will add them to the plot as a manager
    • Requires the CLAIM_PLOT privilege (default role: Member)
  • The /town census menu will now show if a member is online
    • Online members will appear green in the census list, and you can hover to view their online status
    • This also works on cross-server setups; Redis is recommended for this feature in particular!
  • The plugin will now automatically create a backup of the SQLite database on startup (#368)
  • Updated the Simplified Chinese (zh-cn) locales, courtesy of @MSCMDD (#345, #370)
  • Fixed the plugin not restricting interactions when a player was holding an item that had been deactivated (e.g. Ender Pearls on cooldown, Shields disabled with an axe attack) (#351)
  • Fixed no message being displayed when attempting to level-up a town when the town had already reached the max level.
  • API: Added a PostTownCreateEvent, to let you handle when a town has been created. (#336)
  • API: Fixed the user involved in the MemberJoinEvent, MemberLeaveEvent, MemberRoleChangeEvent and MemberRoleChangeEvent, courtesy of @thomasz05

To update, drag+drop and regenerate your config files. You should regenerate your config.yml and messages-xx-xx.yml files. If you haven't modified them from the previous default, you should also regenerate rules.yml and roles.yml; otherwise, don't forget to add the new wartime rules / action privileges to their respective files!

Thank you, and enjoy!

📋 Official HuskTowns binaries are only distributed on Spigot, Polymart, Craftaro, or BuiltByBit.

HuskTowns 2.5.4 - /admintown setlevel & bug fixes

10 Sep 11:46
Compare
Choose a tag to compare

HuskTowns 2.5.4 adds an /admintown setlevel command, makes a range of bug fixes, and adds a few new API methods for developers.

  • Added a new /admintown setlevel command to let administrators manually set the level of a town
    • Usage: /admintown setlevel <town> <level> (where level is between 1 and the maximum configured level)
    • Permission node:husktowns.command.admintown.setlevel
  • The /town level command will now prompt you for confirmation with the cost needed to level-up before levelling up a town (#37)
  • Added the next level cost to the town overview screen (it is shown when hovering over the town's current level) (#218)
  • Added a new operation type: ENDER_PEARL_TELEPORT. This restricts the teleportation into claims using ender pearls or chorus fruit (#313)
  • Right clicking a sign will now be restricted unless you have the block place permission, to prevent players from editing signs in claims (#321)
  • Players will now be removed from town chat mode when leaving or being evicted from a town (#316)
  • Fixed an issue where operation checks carried out for the PlaceholderAPI hook would occur verbosely, sending a chat message (#312)
  • Fixed an issue where editing the town rules would sometimes not be possible occasions due to the rules map being generated with an immutable map (#311)
  • Fixed an issue where the projectiles of shooting monsters could not damage players in claims (#315)
  • Added Russian (ru-ru) locales, courtesy of ADAMADA8 (#309)
  • API: Added various methods to highlight chunk(s) with particle effects (#319)
  • API: Exposed methods for generating chat claim maps (#320)

To update, you should regenerate just your locale files. Thank you!

📋 HuskTowns binaries are only distributed on Spigot, Polymart or Craftaro.

HuskTowns 2.5.3 - Pl3xMap support & improvements

12 Aug 14:17
1dd0c25
Compare
Choose a tag to compare

HuskTowns 2.5.3 adds support for Pl3xMap, adds a few new configuration features, and fixes several bugs. It also makes a small API change related to town colors.

  • Added support for hooking with Pl3xMap (v3) to display town claims on your map, courtesy of @CoolDCB (#303)
  • Added the ability to specify the regex filters used for restricting town names. (#305)
    • Town names now only accept alphanumeric characters, underscores, and hyphens by default
    • The configuration options for this have changed. Please regenerate your config or check the docs for the new settings
  • The color picker now uses a horizontal pipe (|) as the swatch for better 1.20.1+ Unifont legibility
  • The default "flag enabled" locale (used in the /town rules menu) has been changed to (a checkmark) to better express that it means a flag is enabled
  • Commands are now also registered dynamically for server still running Spigot (as opposed to Paper servers)
  • Fixed an issue where the town color command would not correctly work depending on the system environment the server was running on (#304)
  • Fixed an issue where the monster spawning flag would not correctly prevent monsters from spawning when disabled (#283)
  • Fixed a NoSuchElementCheck exception that could sometimes appear in the server console if Town Advancements were disabled
  • API: Town colors are now represented using adventure TextColors instead of java.awt.Color objects.
    • The #getColor() method on the Town object has been deprecated as of this release; please use the new #getTextColor() method instead

To update, you should regenerate just your config and locale files. Thank you!

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.5.2 - MariaDB support, bug fixes

06 Aug 19:47
9b55bfa
Compare
Choose a tag to compare

HuskTowns 2.5.2 adds support for MariaDB and makes a few bug fixes, including a critical fix for town advancement users.

  • Added support for MariaDB (#300)
  • Fixed money and level town advancement reward distribution systems being swapped (#302)
    • The "Tax Deductible" town advancement would attempt to reward towns 1000 levels instead of 1000 units of currency when depositing, causing towns to jump to max level when an advancement check occurred
  • Fixed an issue that meant the unique depositors advancement condition was not being calculated correctly
  • Fixed the database not having the schema version set after initialization for the first time, causing a warning to appear in console the first time the server would be restarted
  • Fixed various config options, such as the database type, requiring capitalization and throwing an error if they were slightly off
  • Updated some internal logic to prepare for supporting Folia (Full folia support is not yet implemented.)
  • Added French (fr-fr) locales, courtesy of XeroYT

To update from 2.5.1, just drag+drop.

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.5.1 - Bug fixes

15 Jul 12:00
ddd2907
Compare
Choose a tag to compare

HuskTowns 2.5.1 fixes a few bugs found in the previous release. Please note support for RedisEconomy has been dropped starting with this release.

  • Removed the RedisEconomy hook due to instability
  • Fixed players not being able to kill monsters that randomly spawn with armor in farm chunks (#277)
  • Attempted a fix for an issue that meant monsters could still spawn even when the flag to disable spawning was set (#280)
  • Fixed pillagers being able to shoot projectiles that could destroy armor stands, item frames, etc. (#281)

To update from 2.5, just drag+drop.

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.5 - Town flag customization, fixes

25 Jun 19:11
3b92ad7
Compare
Choose a tag to compare

HuskTowns 2.5 adds the ability to customize the town flags through a new flags.yml file and fixes a few bugs.

  • Add support for customizing town flags (#273)
    • A new flags.yml config file will be generated on startup
    • Flags defined by ID in this file can then be mapped to default values for each claim type in your rules.yml file.
    • Note that existing towns will not assume new defaults added to the rule presets later on (and flags in this file will only be displayed in /town rules if a default has been applied); provided users have permission, users must apply the flags manually to their town with /town rules <claim_type> <name> <true/false>
    • Servers should have the same flag set configured -- but if there's a mismatch, missing flags will simply go ignored and not be displayed in /town rules.
    • You can define display names for flags by adding them to your locales file
  • Fixed an issue where monsters could not be killed by town members due to the wrong persistence check being performed (#272)
  • Added PLAYER_INTERACT_BLOCK into the set of allowed actions for public_farm_access to fix an issue where placing crops would be cancelled by the surface player interact check
  • Fixed an issue where interacting with an item in the off hand would display an error if the operation were to be denied instead of this happening when interacting with the main hand
  • Fixed an issue that may occur on some paper forks where dependencies would not correctly load due to an incorrect config default on some paper 1.19.4 implementations (note this may not fix compatibility with Purpur 1.19.4, but has been done anyway)
  • API: New methods for getting and registering flags to the flag map have been added. Old Flag.NAME enumerations have been deprecated, though it's not anticipated that this introduces any breaking API changes.

To update, just drag+drop, as there's no config changes—you should see a new rules.yml config appear, which you can edit if you wish. Once again, please use the latest build of Paper if you're still on 1.19.4 and note that some forks will not be compatible due to paper-plugin yaml schema changes. All other versions are unaffected.

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.4 - Inactive town pruning, /town player

22 Jun 17:13
e723dc2
Compare
Choose a tag to compare

HuskTowns 2.4 adds the ability to automatically prune inactive claims, re-adds the /town player command, and makes a significant number of minor bug fixes and improvements.

  • Added the ability to prune inactive claims, both automatically and through a command (#255)
    • The command to do this is /admintown prune <time> [confirm], requiring the husktowns.command.admintown.prune permission node
    • You can also configure this to be done automatically on startup (this is off by default); a new section has been added to the config file letting you enable this and set a number of days before this occurs
  • Re-added the /town player <name> command (alias: /town who), requiring the husktowns.command.town.player permission node, which tells you which town a player is in and the role they have in that town.
  • Improved the boosted crop growth and mob spawning rate system (#268)
    • Fixed issues with the rate calculations that prevented this system from properly working
    • Added purple particle effects whenever a crop is grown faster or extra mob is spawned thanks to a boosted growth rate chance (you can configure which particle to use and/or turn this off in the config file)
    • The numbers accepted for crop/mob rate boosts now accept full 100-point-scale percentage values instead of decimal values
    • Added four new placeholders for crop/mob rate boosts; two for the player's town, and two for the town who owns the claim the player is standing in (#266)
  • Added new locales for the /town list key sort option buttons (#267)
  • Made it so entering a town name with a space in it will now cancel the town creation with a validation error message, instead of just creating a town with the first part of the user's entry before the space (#208)
  • Added more comments across the different plugin config files to improve the setup and configuration experience
  • Updated the special_types file to contain new 1.20 plants, and added seeds to the crop list to let players properly replant in farms
  • Fixed /admintown bonus and /town unclaim all not TAB completing correctly
  • Fixed /admintown unclaim all missing a confirmation step in certain circumstances, causing users to delete their own town's claims

To update to this release, it's strongly reccommended that you regenerate both your config.yml, messages-xx-xx.yml and especially your levels.yml files. When you do so, be sure to make a copy of the files and re-enter any changes you made to the default config (except changes to the percentage values for crop/mob boosts, as detailed previously). This build introduces database changes, and migrations will automatically be carried out on startup—you may wish to take a backup of your database however just in case.

Please note this release is not compatible with Purpur 1.19.4; this is because the last build of Purpur for that version does not include a correct implementation of paper-plugin.yml schema changes made in the last builds of Paper for 1.19.4. As a result, if you're running Paper on 1.19.x, make sure you download the latest Paper version.

Thank you!

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.3.2 - Quality-of-life improvements & fixes

09 Jun 10:34
86e5caa
Compare
Choose a tag to compare

HuskTowns 2.3.2 makes a few small quality-of-life improvements and fixes, and has been tested to work with Spigot on Minecraft 1.20. Make sure you are running the absolute latest version of Paper 1.19.4 for this release if you're still on that! Paper 1.19.3 is no longer supported with this build due to paper-plugin config changes (All other versions are fine).

  • Added the ability to define aliases for the /town command on Paper servers, courtesy of @imhinotori (#257)
    • The aliases section of the config file lets you customize which aliases to support. One alias is present by default: /t
  • Added protection against nether portal exits being created in claimed chunks (#114)
    • This fixes a common annoyance whereby users dirty protected town regions with exit portals they cannot destroy and would not have otherwise been allowed to build
    • If someone has claimed a chunk on the other side of where a portal would be generated for a user without permission when entering the portal, the exit portal will no longer be allowed to generate
    • Relevant action: BLOCK_PLACE
  • Added Turkish (tr-tr) locales, courtesy of tyristana
  • Fixed an issue where name-tagged monsters were not protected from outside users being able to kill them like regular monsters

To update from 2.3.1, you should regenerate your config.yml file. Songoda customers: Since the last release, Songoda has been renamed to Craftaro. Purchases were automatically moved to the new Craftaro site.

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Craftaro.

HuskTowns 2.3.1 - Bug fixes & improvements

17 May 13:22
7597572
Compare
Choose a tag to compare

HuskTowns 2.3.1 is a minor release to fix a few bugs and improvements, especially pertaining to the /admintown command.

  • Updated the syntax of the /admintown bonus command to let you specify a town by the username of a player in that town
    • New usage: /admintown bonus <town|user> <name> [args...]
    • This is useful for stuff like offering town bonuses as rewards through plugins that execute the command to apply the bonus
  • Fixed an issue affecting certain setups where long world name types (>16 characters) could sometimes not fit in the database column
  • Fixed the town spawn coordinates being visible, even if the town spawn was set to private
  • Fixed unclaimable world rules incorrectly using wilderness rules in certain cases, courtesy of @Riksou (#250)
  • Fixed the /admintown ignoreclaims command not displaying a locale correctly, courtesy of @Riksou (#251)

To update from 2.3, just drag+drop! Enjoy.

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Songoda.

HuskTowns 2.3 - New config options, better inspecting, paper plugin

26 Apr 22:40
32119ac
Compare
Choose a tag to compare

HuskTowns 2.3 adds some new config options for setting a town creation cost, re-adds shift+right clicking to inspect nearby chunks while holding the inspection tool, adds advancement rewards, and adds support for running HuskTowns as a paper plugin.

  • Re-added the ability to hold shift when right clicking while holding the claim inspection tool to inspect all nearby claimed chunks. (#229)
  • Added an option to config.yml to use the level 1 deposit requirement as the collateral requirement for creating a town (#230)
  • Added certain rewards for completing town advancements, including a few item rewards in the default advancements.json file (#227)
  • Added support for running HuskTowns as a Paper plugin on Paper servers running 1.19.4+ (#226)
  • Added a config option to let you specify which slot to display town entry/exit and teleport complete notifications in (#228)
  • Fixed a ConcurrentModifcationException caused when using HuskTowns with certain hooks (#224)
  • API: Added an option to set the advancements being used programatically (#227)

To update to 2.3, you must regenerate your config and messages files. You may also want to regenerate your advancements.json file in plugins/HuskTowns/ if you want as it's been updated with new rewards. Enjoy!

📋 HuskTowns is a premium plugin; binaries are not distributed on GitHub. Please purchase the resource from Spigot, Polymart or Songoda.