TownyAdvanced/Towny (com.palmergames.bukkit.towny:towny)
### [`v0.99.6.1`](https://togithub.com/TownyAdvanced/Towny/releases/tag/0.99.6.1): for MC 1.16.* & 1.17.* & 1.18.* & 1.19.* & 1.20.*
[Compare Source](https://togithub.com/TownyAdvanced/Towny/compare/0.99.6.0...0.99.6.1)
- Reset a player's cache when they change gamemodes.
- Reset a player's cache when they are op'd or deop'd.
- Fix unneeded permission test in /n list command.
- Allow Towny admins to bypass PvP damage prevention, courtesy of ImperialSam12 with PR [#7013](https://togithub.com/TownyAdvanced/Towny/issues/7013). (First-Time Contributor!)
- API: Add boolean for if claim is from takeoverclaim to TownPreClaimEvent, courtesy of Fruitloopins with PR [#7023](https://togithub.com/TownyAdvanced/Towny/issues/7023).
- Fix support for Vanished players on servers using PremiumVanish and MC versions older than 1.19.3.
***
Towny Sponsors
I want to give a big thank you to all of my sponsors: These are the people that help to make Towny's support and development as active as it is, and who supported me during this pre-release of Towny.
##### Release contains:
Towny 0.99.6.0
TownyChat 0.109
|Welcome to Towny 0.99.6.0.|
| ---- |
| Towny 0.99.6.0 is the seventh release in the 0.99.\*.\* series! |
| 0.99.6.0 supports all versions of Minecraft 1.16 and newer. |
| This version adds support for MC 1.20.2, as well as a smattering of new commands and features. |
| This version contains critical fixes that you want on your server! |
| This is a drag-and-drop update: just replace your old .jars with the new ones and Towny will take care of the rest of the update by itself. |
➕ Added (41)
#### ➕ Added:
- Add ability for mayors to exempt their townblocks from charging plot taxes.
- Mayors can toggle a plot's status using /plot toggle taxed.
- When false, the owner of that plot will pay no plot tax.
- A Plot Tax: \[Amount|Untaxed] blurb will now appear in the townblock status screens.
- Closes [#3675](https://togithub.com/TownyAdvanced/Towny/issues/3675).
- Add the ability to set colours for TownBlockTypes.
- The TownBlockTypes section by default will come with a new "colour:" option.
- Only the Shop plot currently being configured with a colour (as is the previous behaviour.)
- Existing configs will have to add the colour: line to each TownBlock Type if they want to take advantage.
- Closes [#6115](https://togithub.com/TownyAdvanced/Towny/issues/6115).
- Add a new plotgroup mode for residents to toggle.
- Allows a resident to set /res toggle plotgroup, which will auto-group walked-into plots, as long as the resident has a plotgroupname set in memory.
- The plotgroupname is automatically set when a resident successfully runs /plot group add NAME.
- Closes [#6404](https://togithub.com/TownyAdvanced/Towny/issues/6404).
- Add placing items onto Campfires cause a Build test.
- Closes [#6894](https://togithub.com/TownyAdvanced/Towny/issues/6894).
- Add ability to customize the dimensions of the ASCII map seen in /towny map and the /res toggle map commands.
- Closes [#6117](https://togithub.com/TownyAdvanced/Towny/issues/6117).
- Add ability for towns and nations to have a negative fixed-rate tax amount.
- Closes [#6705](https://togithub.com/TownyAdvanced/Towny/issues/6705).
- Add permission node that bypasses deny_bed_use config setting.
- Closes [#6956](https://togithub.com/TownyAdvanced/Towny/issues/6956).
- Add the ability to hide towns from the /towny top and /t list by commands (as well as the PAPIPlaceholders.)
- Closes [#6996](https://togithub.com/TownyAdvanced/Towny/issues/6996).
- Add warning about MyCommand taking over /t in the startup.
- Upgrade HelpMenus to accept Translatables for multilanguage help menus.
- Refactor Resident Command, add HelpMenus for everything that was not yet using them.
- Add translatable descriptions to all of the HelpMenus.
- Add protection for milkable animals, using a destroy test.
- Add protection for parrots being fed cookies. Now requires passing a destroy test.
- Closes [#6981](https://togithub.com/TownyAdvanced/Towny/issues/6981).
- Update PowerRanks warning to mention their version that fixes the incompatibility.
- Add Position object, courtesy of Warrior with PR [#6536](https://togithub.com/TownyAdvanced/Towny/issues/6536).
- The position object aims to resolve issues with world manager plugins that load after Towny loads, causing spawns to be wiped.
- By representing these spawns with an object that's not associated with a loaded bukkit world, but instead our own internal TownyWorld, we can successfully load them every time, regardless of plugin load order.
- Add coreprotect integration, courtesy of Warrior with PR [#6825](https://togithub.com/TownyAdvanced/Towny/issues/6825).
- Adds integration with coreprotect so that people using it can easily rollback/lookup things done by towny.
- Add support for Paper's SpawnReason, allowing for the summoning of mobs which are spawned into towns which have mobs off and other nice things.
- Closes [#6832](https://togithub.com/TownyAdvanced/Towny/issues/6832).
- Allow negating nodes with {townname} and {nationname}, courtesy of Warrior with PR [#6850](https://togithub.com/TownyAdvanced/Towny/issues/6850).
- Allows nodes with {townname} and {nationname} to be prefixed with a -.
- Make it possible to recover from safemode without restarting, courtesy of Warrior with PR [#6526](https://togithub.com/TownyAdvanced/Towny/issues/6526).
- If you have managed to put your server into safemode, and you can manage to fix what's caused it, you can now use /ta reload all to have towny re-attempt loading.
- Add getOfflinePlayerIfCached to BukkitTools, courtesy of Warrior with PR [#6847](https://togithub.com/TownyAdvanced/Towny/issues/6847).
- Cache a townblock's worldcoord/pos, courtesy of Warrior with PR [#6853](https://togithub.com/TownyAdvanced/Towny/issues/6853).
- Implement a filter method for registry lists, courtesy of Warrior with PR [#6859](https://togithub.com/TownyAdvanced/Towny/issues/6859).
- Add testing for registry lists, courtesy of Warrior with PR [#6871](https://togithub.com/TownyAdvanced/Towny/issues/6871).
- Skip tests by default, courtesy of Warrior with PR [#6878](https://togithub.com/TownyAdvanced/Towny/issues/6878).
- Refactor the regen API to use hashmaps, courtesy of Warrior with PR [#6827](https://togithub.com/TownyAdvanced/Towny/issues/6827).
- Add contributors to plugin.yml, courtesy of Warrior with PR [#6915](https://togithub.com/TownyAdvanced/Towny/issues/6915).
- Speed up calculating bonus block costs, courtesy of Warrior with PR [#6919](https://togithub.com/TownyAdvanced/Towny/issues/6919).
- Add spigot fallback to sign open event, courtesy of Warrior with PR [#6920](https://togithub.com/TownyAdvanced/Towny/issues/6920).
- Replace lang3 validate with guava, courtesy of Warrior with PR [#6931](https://togithub.com/TownyAdvanced/Towny/issues/6931).
- Make the default resident about configurable, courtesy of Warrior with PR [#6954](https://togithub.com/TownyAdvanced/Towny/issues/6954).
- Add gitattributes file, courtesy of Warrior with PR [#6962](https://togithub.com/TownyAdvanced/Towny/issues/6962).
- Improve trident lightning protection, courtesy of Warrior with PR [#6964](https://togithub.com/TownyAdvanced/Towny/issues/6964).
- Replace http urls with https, courtesy of Warrior with PR [#6965](https://togithub.com/TownyAdvanced/Towny/issues/6965).
- Area effect cloud protection improvements, courtesy of Warrior with PR [#6967](https://togithub.com/TownyAdvanced/Towny/issues/6967).
- Add hasTranslation method, courtesy of Warrior with PR [#7001](https://togithub.com/TownyAdvanced/Towny/issues/7001).
- Add utility for getting the bukkit command map, courtesy of Warrior with PR [#7011](https://togithub.com/TownyAdvanced/Towny/issues/7011).
- Add ability for mayors to put their Towns up for sale, and for other players to buy them, courtesy of Fruitloopins with PR [#6934](https://togithub.com/TownyAdvanced/Towny/issues/6934). (First-Time Contributor!)
- Closes [#6478](https://togithub.com/TownyAdvanced/Towny/issues/6478).
- Add "about" section to resident status screen, courtesy of Fruitloopins with PR [#6944](https://togithub.com/TownyAdvanced/Towny/issues/6944).
- Add getMapColor to Government, courtesy of ewof [#6881](https://togithub.com/TownyAdvanced/Towny/issues/6881). (First-Time Contributor!)
- Add towny.receives-plot-notifications permission, courtesy of invpt with PR [#6908](https://togithub.com/TownyAdvanced/Towny/issues/6908). (First-Time Contributor!)
***
➕ Automatic Config Edits (1)
#### ➕ Towny's default config and world files will have the following automatic changes made:
- Farm Plots allowedBlock lists will have COW_SPAWN_EGG,GOAT_SPAWN_EGG,MOOSHROOM_SPAWN_EGG added to them.
***
✨ Command Changes (13)
✨ New Commands (13)
#### ✨ New Commands:
- /plot toggle taxed
- Uses the towny.command.plot.asmayor permission node.
- Allows a mayor to decide whether a plot will require the plotowner to pay the plot taxes.
- /res set about \[clear/none/reset/msg]
- Similar to /t set board, adds a place for residents to remark about themselves.
- /t forsale/fs \[$]
- Puts town up for sale at the specified amount
- Requires towny.command.town.forsale
- /t notforsale/nfs
- Cancels town sale
- Requires towny.command.town.notforsale
- /t buytown \[town]
- Buy a town that is for sale
- Requires towny.command.town.buytown
- /ta set about \[username] \[clear/none/reset/msg]
- /ta town \[town] forsale/fs \[$]
- Admin command to force town sale at specified price
- Requires towny.command.townyadmin.town.forsale
- /ta town \[town] notforsale/nfs
- Admin command to force cancel town sale
- Requires towny.command.townyadmin.town.notforsale
- /ta town TOWNNAME toggle visibleontoplists \[on|off]
- Used by an admin to toggle a town's visiblity on the /towny top, /t list by commands (as well as the PAPIPlaceholders.)
- /ta nation NAME meta set \[key] \[value]
- /ta nation NAME meta add|remove \[key]
- /ta resident NAME meta set \[key] \[value]
- /ta resident NAME meta set add|remove \[key]
***
✨ Changed Commands (0)
#### ✨ Changed Commands:
- None.
***
❌ Removed Commands (0)
#### ❌ Removed Commands:
- None.
***
***
📕 Config Changes (7)
📕 New Config Options (7)
#### 📕 New Config Options:
##### These new settings will be added to your config with their default settings.
- plugin.interfacing.coreprotect_support
- Default: true
- If enabled, blocks that get regenerated by Towny, such as revert-on-unclaim and explosion regeneration will be logged with CoreProtect.
- Actions are logged with the #towny user, so Towny's actions can easily be undone using user:#towny.
- protection.town_mob_removal_ignored_spawn_causes
- Default: "" (none)
- A comma seperated list of spawn causes, if an entity has a spawn cause that is in this list they will not be removed by town mob removal.
- For the list of valid spawn causes, see https://jd.papermc.io/paper/1.20/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html
- Due to technical reasons, this setting only works on Paper servers.
- ascii_map_symbols.map_height
- Default: 7
- The height of the map shown in /towny map and /res toggle map.
- Minimum 7, maximum 18.
- ascii_map_symbols.map_width
- Default: 27
- The width of the map shown in /towny map and /res toggle map.
- Minimum 7, maximum 27, only odd numbers are accepted.
- economy.daily_taxes.allow_negative_town_tax
- Default: false
- If enabled, and a town tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every resident being paid by the town bank (if the town can afford it.)
- economy.daily_taxes.allow_negative_nation_tax
- Default: false
- If enabled, and a nation tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every town in the nation being paid by the nation bank (if the nation can afford it.)
- resident_settings.default_about
- Default: /res set about \[msg]
- The default resident about text, shown in the resident's status screen.
***
❌ Removed Config Options (0)
#### ❌ Removed Config Options:
- None.
***
***
🔑 Permission Node Changes (9)
🔑 New Permission Nodes (9)
#### 🔑 New Permission Nodes:
**No change required in townyperms.yml.**
- (All of which are child nodes of towny.command.town.*, no townyperms.yml changes are required for standard installations.)
- towny.command.town.forsale
- towny.command.town.notforsale
- towny.command.town.buytown
- (All of which are child nodes of towny.command.townyadmin.town.*, no townyperms.yml changes are required for standard installations.)
- towny.command.townyadmin.town.forsale
- towny.command.townyadmin.town.notforsale
- towny.command.resident.set.about - ChildNode of towny.command.resident.set.*
- towny.command.townyadmin.set.about - ChildNode of towny.command.townyadmin.set.*
- towny.receives-plot-notifications - Decides whether a player will see plot notifications.
- towny.bypass_bed_restriction
- description: Makes the player not subject to bed-use restrictions.
- default: false
***
❌ Removed Permission Nodes (0)
#### ❌ Removed Permission Nodes:
- None.
***
----
💻 API Changes (3)
#### 💻 API:
- Added PlotToggleTaxedEvent
- Cancellable event that stops a mayor toggling taxation off/on on a townblock.
- Add TownyAPI#getTownName(Player).
- Added TownyObjectFormattedNameEvent
- Thrown when a Resident, Town or Nation is returning a getFormattedName() value.
- This is used to alter the prefix or postfix that flanks a TownyObject name, usually a title, surname, townlevel/nationlevel prefix/postfix.
- Closes #6995.
***
🔧 Fixed (50)
#### 🔧 Fixed:
- Make towny handle longer world names on sql.
- Closes [#6796](https://togithub.com/TownyAdvanced/Towny/issues/6796).
- Fix personal permission line loading in TownBlocks.
- Closes [#6856](https://togithub.com/TownyAdvanced/Towny/issues/6856).
- Fix Towny uncancelling PlayerInteractEvents.
- Closes [#6861](https://togithub.com/TownyAdvanced/Towny/issues/6861).
- Fix EconomyAccount removals not paying their value into the ClosedEconomy Server Account.
- Closes [#6874](https://togithub.com/TownyAdvanced/Towny/issues/6874).
- Fix Hibernated Residents table being keyed improperly.
- Closes [#6936](https://togithub.com/TownyAdvanced/Towny/issues/6936).
- Fix /plot info throwing NPE when using_economy is false.
- Closes [#7000](https://togithub.com/TownyAdvanced/Towny/issues/7000).
- Take care of all the places we weren't using Locale.ROOT with toLowerCase().
- Fix PlayerInteractEvent throwing NoSuchFieldError on 1.19.4 servers using a 1.20 datapack.
- Make a couple CombatUtil methods more reliable.
- Fix ConcurrentModificationError in saving the regen list.
- Fix chunk notification tasks still running when Towny has disabled itself.
- Fix edge case scenario where NPCs can be treated like Players in Combat.
- Fix a town being able to be reclaimed a second time if the first Confirmation hadn't timed out.
- Fix being unable to run Resident-based TownyAddonCommands from the console.
- Fix bank history books showing the incorrect balances, a side effect of a now un-needed patch to an older issue.
- Only warn the log when the world isn't loaded 20 ticks after Towny first tries to load it.
- Fix removing Town from residents not being able to delete 1 man towns.
- Fix the NewHourEvent being started with the incorrect delay.
- Fix tourist-blacklisted commands not being usable in the wilderness.
- Fix seeing an errant permission string when running a /res toggle addon command.
- Handle top placeholders better, courtesy of Warrior with PR [#6821](https://togithub.com/TownyAdvanced/Towny/issues/6821).
- Fixes top placeholders failing on towns with spaces in their name.
- Closes [#6814](https://togithub.com/TownyAdvanced/Towny/issues/6814).
- Remove underscores from plot names in chunk notifs, courtesy of Warrior with PR [#6830](https://togithub.com/TownyAdvanced/Towny/issues/6830).
- Closes [#6829](https://togithub.com/TownyAdvanced/Towny/issues/6829).
- Fix registry lists' add method not working as expected, courtesy of Warrior with PR [#6869](https://togithub.com/TownyAdvanced/Towny/issues/6869).
- Closes [#6866](https://togithub.com/TownyAdvanced/Towny/issues/6866).
- Fix Item Registry matching incorrectly, courtesy of Warrior with PR [#6885](https://togithub.com/TownyAdvanced/Towny/issues/6885).
- Closes [#6868](https://togithub.com/TownyAdvanced/Towny/issues/6868).
- Fix exception when putting a group for sale with eco off, courtesy of Warrior with PR [#6970](https://togithub.com/TownyAdvanced/Towny/issues/6970).
- Closes [#6969](https://togithub.com/TownyAdvanced/Towny/issues/6969).
- User internal class for expanded scheduling check, courtesy of Warrior with PR [#6822](https://togithub.com/TownyAdvanced/Towny/issues/6822).
- Fix exception being thrown for empty key in wilderness entity regen lists, courtesy of Warrior with PR [#6826](https://togithub.com/TownyAdvanced/Towny/issues/6826).
- Fix a typo in TownyUniverse javadoc, courtesy of Warrior with PR [#6838](https://togithub.com/TownyAdvanced/Towny/issues/6838).
- Use better method for determining invitee online status, courtesy of Warrior with PR [#6848](https://togithub.com/TownyAdvanced/Towny/issues/6848).
- Use invokeExact where possible, courtesy of Warrior with PR [#6849](https://togithub.com/TownyAdvanced/Towny/issues/6849).
- Remove unneeded filtering from matchRegistry, courtesy of Warrior with PR [#6851](https://togithub.com/TownyAdvanced/Towny/issues/6851).
- Use material key for cache debug message, courtesy of Warrior with PR [#6852](https://togithub.com/TownyAdvanced/Towny/issues/6852).
- Fix teleport refund being done synchronously, courtesy of Warrior with PR [#6870](https://togithub.com/TownyAdvanced/Towny/issues/6870).
- Remove redundant 1.20 check, courtesy of Warrior with PR [#6873](https://togithub.com/TownyAdvanced/Towny/issues/6873).
- Fix returning early in the PlayerInteractEvent listeners, courtesy of Warrior with PR [#6886](https://togithub.com/TownyAdvanced/Towny/issues/6886).
- Use concurrent collection for regen queue, courtesy of Warrior with PR [#6889](https://togithub.com/TownyAdvanced/Towny/issues/6889).
- Cancel chunk notification tasks on logout, courtesy of Warrior with PR [#6888](https://togithub.com/TownyAdvanced/Towny/issues/6888).
- Cancel scheduled tasks on shutdown, courtesy of Warrior with PR [#6890](https://togithub.com/TownyAdvanced/Towny/issues/6890).
- Remove an outdated comment, courtesy of Warrior with PR [#6892](https://togithub.com/TownyAdvanced/Towny/issues/6892).
- Improve move event listener/player cache a bit, courtesy of Warrior with PR [#6910](https://togithub.com/TownyAdvanced/Towny/issues/6910).
- Use constant for line separator string, courtesy of Warrior with PR [#6896](https://togithub.com/TownyAdvanced/Towny/issues/6896).
- Make the ecowarn line log on the INFO level, courtesy of Warrior with PR [#6895](https://togithub.com/TownyAdvanced/Towny/issues/6895).
- Fix exception after creating a new PlayerCache, courtesy of Warrior with PR [#6911](https://togithub.com/TownyAdvanced/Towny/issues/6911).
- Fix all the weirdness around world entity key loading, courtesy of Warrior with PR [#6901](https://togithub.com/TownyAdvanced/Towny/issues/6901).
- Catch exceptions during plot group saving, courtesy of Warrior with PR [#6927](https://togithub.com/TownyAdvanced/Towny/issues/6927).
- Run sync confirmations on the player's region, courtesy of Warrior with PR [#6960](https://togithub.com/TownyAdvanced/Towny/issues/6960).
- Fix a lot of IDE warnings, courtesy of Warrior with PR [#6658](https://togithub.com/TownyAdvanced/Towny/issues/6658).
- Add missing deprecation annotations, courtesy of Warrior with PR [#6963](https://togithub.com/TownyAdvanced/Towny/issues/6963).
- Remove exception based control flow from map hud, courtesy of Warrior with PR [#6972](https://togithub.com/TownyAdvanced/Towny/issues/6972).
- Fix unclaim all message missing color/prefix, courtesy of Warrior with PR [#7014](https://togithub.com/TownyAdvanced/Towny/issues/7014).
***
🌏 Language Updates (0)
#### 🌏 Language Updates:
- None.
***
🌏 Dependency Updates (12)
#### 🌏 Dependency Updates:
- Remove essentials maven dependency, courtesy of Warrior with PR #6842.
- Remove iConomy soft dependency, courtesy of Warrior with PR #6980.
- Bump org.junit.jupiter:junit-jupiter-api from 5.9.3 to 5.10.0.
- Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0.
- Bump net.coreprotect:coreprotect from 21.3 to 22.2.
- Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.17.0 to 3.22.0.
- Bump com.github.ElgarL:groupmanager from 2.9 to 3.2.
- Bump org.apache.commons:commons-compress from 1.23.0 to 1.24.0.
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.6.0.
- Bump adventure platform bukkit to 4.3.1, courtesy of Warrior with PR #7010.
- Adds 1.20.2 support.
- Bump me.clip:placeholderapi from 2.11.3 to 2.11.4.
- Bump org.apache.maven.plugins:maven-shade-plugin from 3.5.0 to 3.5.1.
***
👽 Placeholder Updates (0)
#### 👽 Placeholder Updates:
- None.
***
💬 TownyChat Changes (0)
#### 💬 TownyChat Changes:
- Fix help menus not being coloured properly.
- Fix worlds section not generating when per-world is set to true in the chatconfig.yml.
***
Towny Sponsors
I want to give a big thank you to all of my sponsors: These are the people that help to make Towny's support and development as active as it is, and who supported me during this release of Towny.
![Spigot_Banner_Towny](https://togithub.com/TownyAdvanced/Towny/assets/879756/559c8340-82e5-41fc-a10c-af0dcf47f38f)
##### ⏬ Download available as a .zip file in the Assets section below:
### [`v0.99.5.21`](https://togithub.com/TownyAdvanced/Towny/releases/tag/0.99.5.21): for MC 1.16.* & 1.17.* & 1.18.* & 1.19.* & 1.20.*
[Compare Source](https://togithub.com/TownyAdvanced/Towny/compare/0.99.5.20...0.99.5.21)
- Add new townyadmin commands for controlling resident and nation metadata when it is Globally registered metadata.
- /ta nation NAME meta set \[key] \[value]
- /ta nation NAME meta add|remove \[key]
- /ta resident NAME meta set \[key] \[value]
- /ta resident NAME meta set add|remove \[key]
- Closes [#7015](https://togithub.com/TownyAdvanced/Towny/issues/7015).
- Bump adventure platform bukkit to 4.3.1, courtesy of Warrior with PR [#7010](https://togithub.com/TownyAdvanced/Towny/issues/7010).
- Adds 1.20.2 support.
- Fix unclaim all message missing color/prefix, courtesy of Warrior with PR [#7014](https://togithub.com/TownyAdvanced/Towny/issues/7014).
- Add utility for getting the bukkit command map, courtesy of Warrior with PR [#7011](https://togithub.com/TownyAdvanced/Towny/issues/7011).
- Bump me.clip:placeholderapi from 2.11.3 to 2.11.4.
- Bump org.apache.maven.plugins:maven-shade-plugin from 3.5.0 to 3.5.1.
- Bump net.coreprotect:coreprotect from 22.1 to 22.2.
***
Cumulative changes since 0.99.5.00.99.5.20
- Fix /plot info throwing NPE when using_economy is false.
- Closes [#7000](https://togithub.com/TownyAdvanced/Towny/issues/7000).
- Add hasTranslation method, courtesy of Warrior with PR [#7001](https://togithub.com/TownyAdvanced/Towny/issues/7001).
0.99.5.19
- Update PowerRanks warning to mention their version that fixes the incompatibility.
- API: Added TownyObjectFormattedNameEvent
- Thrown when a Resident, Town or Nation is returning a getFormattedName() value.
- This is used to alter the prefix or postfix that flanks a TownyObject name, usually a title, surname, townlevel/nationlevel prefix/postfix.
- Closes [#6995](https://togithub.com/TownyAdvanced/Towny/issues/6995).
- Add the ability to hide towns from the /towny top and /t list by commands (as well as the PAPIPlaceholders.)
- Closes [#6996](https://togithub.com/TownyAdvanced/Towny/issues/6996).
- New Command: /ta town TOWNNAME toggle visibleontoplists \[on|off]
- Used by an admin to toggle a town's visiblity on the /towny top, /t list by commands (as well as the PAPIPlaceholders.)
- Bump org.apache.commons:commons-compress from 1.23.0 to 1.24.0.
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.6.0.
- Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.21.0 to 3.22.0.
0.99.5.18
- Add protection for parrots being fed cookies. Now requires passing a destroy test.
- Closes [#6981](https://togithub.com/TownyAdvanced/Towny/issues/6981).
- Remove exception based control flow from map hud, courtesy of Warrior with PR [#6972](https://togithub.com/TownyAdvanced/Towny/issues/6972).
- Remove iConomy soft dependency, courtesy of Warrior with PR [#6980](https://togithub.com/TownyAdvanced/Towny/issues/6980).
- Bump net.coreprotect:coreprotect from 22.0 to 22.1.
- Bump mockbukkit to 3.21.0.
- Fix tourist-blacklisted commands not being usable in the wilderness.
- Fix seeing an errant permission string when running a /res toggle addon command.
0.99.5.17
- Add permission node that bypasses deny_bed_use config setting.
- Closes [#6956](https://togithub.com/TownyAdvanced/Towny/issues/6956).
- New Permission Node: towny.bypass_bed_restriction
- description: Makes the player not subject to bed-use restrictions.
- default: false
- Run sync confirmations on the player's region, courtesy of Warrior with PR [#6960](https://togithub.com/TownyAdvanced/Towny/issues/6960).
- Fix a lot of IDE warnings, courtesy of Warrior with PR [#6658](https://togithub.com/TownyAdvanced/Towny/issues/6658).
- Add gitattributes file, courtesy of Warrior with PR [#6962](https://togithub.com/TownyAdvanced/Towny/issues/6962).
- Add missing deprecation annotations, courtesy of Warrior with PR [#6963](https://togithub.com/TownyAdvanced/Towny/issues/6963).
- Fix exception when putting a group for sale with eco off, courtesy of Warrior with PR [#6970](https://togithub.com/TownyAdvanced/Towny/issues/6970).
- Closes [#6969](https://togithub.com/TownyAdvanced/Towny/issues/6969).
- Improve trident lightning protection, courtesy of Warrior with PR [#6964](https://togithub.com/TownyAdvanced/Towny/issues/6964).
- Replace http urls with https, courtesy of Warrior with PR [#6965](https://togithub.com/TownyAdvanced/Towny/issues/6965).
- Area effect cloud protection improvements, courtesy of Warrior with PR [#6967](https://togithub.com/TownyAdvanced/Towny/issues/6967).
0.99.5.16
- Make the default resident about configurable, courtesy of Warrior with PR [#6954](https://togithub.com/TownyAdvanced/Towny/issues/6954).
- New Config Node: resident_settings.default_about
- Default: /res set about \[msg]
- The default resident about text, shown in the resident's status screen.
- Fix removing Town from residents not being able to delete 1 man towns.
- Add protection for milkable animals, using a destroy test.
- Automatic Config Edit: Farm Plots allowedBlock lists will have COW_SPAWN_EGG,GOAT_SPAWN_EGG,MOOSHROOM_SPAWN_EGG added to them.
- Fix the NewHourEvent being started with the incorrect delay.
0.99.5.15
- Add a new plotgroup mode for residents to toggle.
- Allows a resident to set /res toggle plotgroup, which will auto-group walked-into plots, as long as the resident has a plotgroupname set in memory.
- The plotgroupname is automatically set when a resident successfully runs /plot group add NAME.
- Closes [#6404](https://togithub.com/TownyAdvanced/Towny/issues/6404).
- Fix being unable to run Resident-based TownyAddonCommands from the console.
- Fix bank history books showing the incorrect balances, a side effect of a now un-needed patch to an older issue.
- Upgrade HelpMenus to accept Translatables for multilanguage help menus.
- Refactor Resident Command, add HelpMenus for everything that was not yet using them.
- Only warn the log when the world isn't loaded 20 ticks after Towny first tries to load it.
- Add translatable descriptions to all of the HelpMenus.
0.99.5.14
- API: Add TownyAPI#getTownName(Player).
- Add "about" section to resident status screen, courtesy of Fruitloopins with PR [#6944](https://togithub.com/TownyAdvanced/Towny/issues/6944).
- Catch exceptions during plot group saving, courtesy of Warrior with PR [#6927](https://togithub.com/TownyAdvanced/Towny/issues/6927).
0.99.5.13
- Add ability for towns and nations to have a negative fixed-rate tax amount.
- Closes [#6705](https://togithub.com/TownyAdvanced/Towny/issues/6705).
- New Config Option: economy.daily_taxes.allow_negative_town_tax
- Default: false
- If enabled, and a town tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every resident being paid by the town bank (if the town can afford it.)
- New Config Option: economy.daily_taxes.allow_negative_nation_tax
- Default: false
- If enabled, and a nation tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every town in the nation being paid by the nation bank (if the nation can afford it.)
- Add warning about MyCommand taking over /t in the startup.
- Bump com.github.ElgarL:groupmanager from 2.9 to 3.2.
- Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.19.0 to 3.19.1.
- Fix Hibernated Residents table being keyed improperly.
- Closes [#6936](https://togithub.com/TownyAdvanced/Towny/issues/6936).
- Add ability for mayors to put their Towns up for sale, and for other players to buy them, courtesy of Fruitloopins with PR [#6934](https://togithub.com/TownyAdvanced/Towny/issues/6934). (First-Time Contributor!)
- Closes [#6478](https://togithub.com/TownyAdvanced/Towny/issues/6478).
- New Command: /t forsale/fs \[$]
- Puts town up for sale at the specified amount
- Requires towny.command.town.forsale
- New Command: /t notforsale/nfs
- Cancels town sale
- Requires towny.command.town.notforsale
- New Command: /t buytown \[town]
- Buy a town that is for sale
- Requires towny.command.town.buytown
- New Command: /ta town \[town] forsale/fs \[$]
- Admin command to force town sale at specified price
- Requires towny.command.townyadmin.town.forsale
- New Command: /ta town \[town] notforsale/nfs
- Admin command to force cancel town sale
- Requires towny.command.townyadmin.town.notforsale
- New permission nodes: (All of which are child nodes of towny.command.town.\*, no townyperms.yml changes are required for standard installations.)
- towny.command.town.forsale
- towny.command.town.notforsale
- towny.command.town.buytown
- New permission nodes: (All of which are child nodes of towny.command.townyadmin.town.\*, no townyperms.yml changes are required for standard installations.)
- towny.command.townyadmin.town.forsale
- towny.command.townyadmin.town.notforsale
- Add the ability to set colours for TownBlockTypes.
- The TownBlockTypes section by default will come with a new "colour:" option.
- Only the Shop plot currently being configured with a colour (as is the previous behaviour.)
- Existing configs will have to add the colour: line to each TownBlock Type if they want to take advantage.
- Closes [#6115](https://togithub.com/TownyAdvanced/Towny/issues/6115).
0.99.5.12
- Add ability for mayors to exempt their townblocks from charging plot taxes.
- Mayors can toggle a plot's status using /plot toggle taxed.
- When false, the owner of that plot will pay no plot tax.
- A Plot Tax: \[Amount|Untaxed] blurb will now appear in the townblock status screens.
- Closes [#3675](https://togithub.com/TownyAdvanced/Towny/issues/3675).
- New Command: /plot toggle taxed
- Uses the towny.command.plot.asmayor permission node.
- Allows a mayor to decide whether a plot will require the plotowner to pay the plot taxes.
- API: PlotToggleTaxedEvent
- Cancellable event that stops a mayor toggling taxation off/on on a townblock.
- Add ability to customize the dimensions of the ASCII map seen in /towny map and the /res toggle map commands.
- Closes [#6117](https://togithub.com/TownyAdvanced/Towny/issues/6117).
- New Config Option: ascii_map_symbols.map_height
- Default: 7
- The height of the map shown in /towny map and /res toggle map.
- Minimum 7, maximum 18.
- New Config Option: ascii_map_symbols.map_width
- Default: 27
- The width of the map shown in /towny map and /res toggle map.
- Minimum 7, maximum 27, only odd numbers are accepted.
- Replace lang3 validate with guava, courtesy of Warrior with PR [#6931](https://togithub.com/TownyAdvanced/Towny/issues/6931).
0.99.5.11
- Fix a town being able to be reclaimed a second time if the first Confirmation hadn't timed out.
- Add placing items onto Campfires cause a Build test.
- Closes [#6894](https://togithub.com/TownyAdvanced/Towny/issues/6894).
- Fix all the weirdness around world entity key loading, courtesy of Warrior with PR [#6901](https://togithub.com/TownyAdvanced/Towny/issues/6901).
- Speed up calculating bonus block costs, courtesy of Warrior with PR [#6919](https://togithub.com/TownyAdvanced/Towny/issues/6919).
- Add spigot fallback to sign open event, courtesy of Warrior with PR [#6920](https://togithub.com/TownyAdvanced/Towny/issues/6920).
0.99.5.10
- Fix exception after creating a new PlayerCache, courtesy of Warrior with PR [#6911](https://togithub.com/TownyAdvanced/Towny/issues/6911).
- Add contributors to plugin.yml, courtesy of Warrior with PR [#6915](https://togithub.com/TownyAdvanced/Towny/issues/6915).
0.99.5.9
- Fix edge case scenario where NPCs can be treated like Players in Combat.
- Add towny.receives-plot-notifications permission, courtesy of invpt with PR [#6908](https://togithub.com/TownyAdvanced/Towny/issues/6908). (First-Time Contributor!)
- Improve move event listener/player cache a bit, courtesy of Warrior with PR [#6910](https://togithub.com/TownyAdvanced/Towny/issues/6910).
- Use constant for line separator string, courtesy of Warrior with PR [#6896](https://togithub.com/TownyAdvanced/Towny/issues/6896).
- Make the ecowarn line log on the INFO level [#6895](https://togithub.com/TownyAdvanced/Towny/issues/6895).
- Bump net.coreprotect:coreprotect from 21.3 to 22.0.
- Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.17.0 to 3.19.0.
- Add Position object, courtesy of Warrior with PR [#6536](https://togithub.com/TownyAdvanced/Towny/issues/6536).
- The position object aims to resolve issues with world manager plugins that load after Towny loads, causing spawns to be wiped.
- By representing these spawns with an object that's not associated with a loaded bukkit world, but instead our own internal TownyWorld, we can successfully load them every time, regardless of plugin load order.
0.99.5.8
- Cancel scheduled tasks on shutdown, courtesy of Warrior with PR [#6890](https://togithub.com/TownyAdvanced/Towny/issues/6890).
- Make it possible to recover from safemode without restarting, courtesy of Warrior with PR [#6526](https://togithub.com/TownyAdvanced/Towny/issues/6526).
- If you have managed to put your server into safemode, and you can manage to fix what's caused it, you can now use /ta reload all to have towny re-attempt loading.
- Remove an outdated comment, courtesy of Warrior with PR [#6892](https://togithub.com/TownyAdvanced/Towny/issues/6892).
0.99.5.7
- Fix ConcurrentModificationError in saving the regen list.
- Fix chunk notification tasks still running when Towny has disabled itself.
- Use concurrent collection for regen queue, courtesy of Warrior with PR [#6889](https://togithub.com/TownyAdvanced/Towny/issues/6889).
- Cancel chunk notification tasks on logout, courtesy of Warrior with PR [#6888](https://togithub.com/TownyAdvanced/Towny/issues/6888).
- Bump org.junit.jupiter:junit-jupiter-api from 5.9.3 to 5.10.0.
- Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0.
0.99.5.6
- Add getMapColor to Government, courtesy of ewof [#6881](https://togithub.com/TownyAdvanced/Towny/issues/6881). (First-Time Contributor!)
- Fix returning early in the PlayerInteractEvent listeners, courtesy of Warrior with PR [#6886](https://togithub.com/TownyAdvanced/Towny/issues/6886).
- Fix Item Registry matching incorrectly, courtesy of Warrior with PR [#6885](https://togithub.com/TownyAdvanced/Towny/issues/6885).
- Closes [#6868](https://togithub.com/TownyAdvanced/Towny/issues/6868).
0.99.5.5
- Fix EconomyAccount removals not paying their value into the ClosedEconomy Server Account.
- Closes [#6874](https://togithub.com/TownyAdvanced/Towny/issues/6874).
- Remove redundant 1.20 check, courtesy of Warrior with PR [#6873](https://togithub.com/TownyAdvanced/Towny/issues/6873).
- Add testing for registry lists, courtesy of Warrior with PR [#6871](https://togithub.com/TownyAdvanced/Towny/issues/6871).
- Skip tests by default, courtesy of Warrior with PR [#6878](https://togithub.com/TownyAdvanced/Towny/issues/6878).
- Refactor the regen API to use hashmaps, courtesy of Warrior with PR [#6827](https://togithub.com/TownyAdvanced/Towny/issues/6827).
- Make a couple CombatUtil methods more reliable.
0.99.5.4
- Fix PlayerInteractEvent throwing NoSuchFieldError on 1.19.4 servers using a 1.20 datapack.
- Fix registry lists' add method not working as expected, courtesy of Warrior with PR [#6869](https://togithub.com/TownyAdvanced/Towny/issues/6869).
- Closes [#6866](https://togithub.com/TownyAdvanced/Towny/issues/6866).
- Fix teleport refund being done synchronously, courtesy of Warrior with PR [#6870](https://togithub.com/TownyAdvanced/Towny/issues/6870).
0.99.5.3
- Fix personal permission line loading in TownBlocks.
- Closes [#6856](https://togithub.com/TownyAdvanced/Towny/issues/6856).
- Fix Towny uncancelling PlayerInteractEvents.
- Closes [#6861](https://togithub.com/TownyAdvanced/Towny/issues/6861).
- Remove unneeded filtering from matchRegistry, courtesy of Warrior with PR [#6851](https://togithub.com/TownyAdvanced/Towny/issues/6851).
- Cache a townblock's worldcoord/pos, courtesy of Warrior with PR [#6853](https://togithub.com/TownyAdvanced/Towny/issues/6853).
- Allow negating nodes with {townname} and {nationname}, courtesy of Warrior with PR [#6850](https://togithub.com/TownyAdvanced/Towny/issues/6850).
- Allows nodes with {townname} and {nationname} to be prefixed with a -.
- Use material key for cache debug message, courtesy of Warrior with PR [#6852](https://togithub.com/TownyAdvanced/Towny/issues/6852).
- Implement a filter method for registry lists, courtesy of Warrior with PR [#6859](https://togithub.com/TownyAdvanced/Towny/issues/6859).
- Take care of all the places we weren't using Locale.ROOT with toLowerCase().
0.99.5.2
- Fix a typo in TownyUniverse javadoc, courtesy of Warrior with PR [#6838](https://togithub.com/TownyAdvanced/Towny/issues/6838).
- Remove underscores from plot names in chunk notifs, courtesy of Warrior with PR [#6830](https://togithub.com/TownyAdvanced/Towny/issues/6830).
- Closes [#6829](https://togithub.com/TownyAdvanced/Towny/issues/6829).
- Use better method for determining invitee online status, courtesy of Warrior with PR [#6848](https://togithub.com/TownyAdvanced/Towny/issues/6848).
- Add coreprotect integration, courtesy of Warrior with PR [#6825](https://togithub.com/TownyAdvanced/Towny/issues/6825).
- Adds integration with coreprotect so that people using it can easily rollback/lookup things done by towny.
- New config option: plugin.interfacing.coreprotect_support
- Default: true
- If enabled, blocks that get regenerated by Towny, such as revert-on-unclaim and explosion regeneration will be logged with CoreProtect.
- Actions are logged with the #towny user, so Towny's actions can easily be undone using user:#towny.
- Add support for Paper's SpawnReason, allowing for the summoning of mobs which are spawned into towns which have mobs off and other nice things.
- Closes [#6832](https://togithub.com/TownyAdvanced/Towny/issues/6832).
- New Config Option: protection.town_mob_removal_ignored_spawn_causes
- Default: "" (none)
- A comma seperated list of spawn causes, if an entity has a spawn cause that is in this list they will not be removed by town mob removal.
- For the list of valid spawn causes, see https://jd.papermc.io/paper/1.20/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html
- Due to technical reasons, this setting only works on Paper servers.
- Add getOfflinePlayerIfCached to BukkitTools, courtesy of Warrior with PR [#6847](https://togithub.com/TownyAdvanced/Towny/issues/6847).
- Use invokeExact where possible, courtesy of Warrior with PR [#6849](https://togithub.com/TownyAdvanced/Towny/issues/6849).
- Remove essentials maven dependency, courtesy of Warrior with PR [#6842](https://togithub.com/TownyAdvanced/Towny/issues/6842).
0.99.5.1
- Handle top placeholders better, courtesy of Warrior with PR [#6821](https://togithub.com/TownyAdvanced/Towny/issues/6821).
- Fixes top placeholders failing on towns with spaces in their name.
- Closes [#6814](https://togithub.com/TownyAdvanced/Towny/issues/6814).
- User internal class for expanded scheduling check, courtesy of Warrior with PR [#6822](https://togithub.com/TownyAdvanced/Towny/issues/6822).
- Fix exception being thrown for empty key in wilderness entity regen lists, courtesy of Warrior with PR [#6826](https://togithub.com/TownyAdvanced/Towny/issues/6826).
- Make towny handle longer world names on sql.
- Closes [#6796](https://togithub.com/TownyAdvanced/Towny/issues/6796).
***
Towny Sponsors
I want to give a big thank you to all of my sponsors: These are the people that help to make Towny's support and development as active as it is, and who supported me during this pre-release of Towny.
DrprofLuigi
AllieDragon
akup001
ThePontificate
TegulaThePig
pebblehost
Eblyss
MrLogano
Lambsy
Jayoakson
MKieburtz
typicalsmartman
cobrex1
gerardvanschip
lexiccn
j0g32
jsuarezl
tomhmagic
ReEvadere
SmallSansSerif
Diaroman
CorbinHorn
NoikzGaming
trevor1097
KeNickGong
MilesBHuff
beabuenodev
ZenithDevv
Dynamite99
CasperTimmy
Bloc-k
Peskdt
xSTORMYxSHM
Wextra
Kalqb
TRLWeiss
tjdings
SADxds
EcoSMP
Theeno74
ItzXPurpleX
Rekar7
Folas1337
real-vgi
SuperRedstoneYT
vyvin
NeumimTo
tyhppp233
Tuaniwan
ProjectGuinness
GundalfWasTaken
qwlke
gageeet
Microweb4
PainOchoco
bradyyykennyy
StevenSharker
Lemar98s
royblue12
dawwggS
editon96
Exygle
KermX
nullXer0
skyjacc
MattDeWeerd
Rimuru-Tempest-IMP
Alink-Marty
Kieubasiarz
GraphicHex
Deadhyena
GitDaviBastos
James-P-Bennett
RandalABurdJr
DarioMavilia
incristi2
FokshaWasTaken
connor7K
smokytek
papiricoh
Grigory200
enesutku
Sk8nkill
xCptSpiffyx
hexahigh
AustinGoodrich
numeragon
Momshroom
Intrabit71
MetaverseRPN
AldinaMapping
CrypticBlades
Semisol
spikehidden
SecondEarthOnline
AncientSM
JunkieCraft
DoctorChosen
CorruptedGreed
tskopen
Ashparty
Roman90879
shepherdjerred
RustyWasTaken
1456o9
lammmypl
CyberQer
AlfreDGR
Celestial0579
NetherShower
bretomart
ItsSynchro
Gl0W1E
DeltaOrion
gorbyhail
TheF
Configuration
📅 Schedule: Branch creation - "on monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
0.99.5.11
->0.99.6.1
Release Notes
TownyAdvanced/Towny (com.palmergames.bukkit.towny:towny)
### [`v0.99.6.1`](https://togithub.com/TownyAdvanced/Towny/releases/tag/0.99.6.1): for MC 1.16.* & 1.17.* & 1.18.* & 1.19.* & 1.20.* [Compare Source](https://togithub.com/TownyAdvanced/Towny/compare/0.99.6.0...0.99.6.1) - Reset a player's cache when they change gamemodes. - Reset a player's cache when they are op'd or deop'd. - Fix unneeded permission test in /n list command. - Allow Towny admins to bypass PvP damage prevention, courtesy of ImperialSam12 with PR [#7013](https://togithub.com/TownyAdvanced/Towny/issues/7013). (First-Time Contributor!) - API: Add boolean for if claim is from takeoverclaim to TownPreClaimEvent, courtesy of Fruitloopins with PR [#7023](https://togithub.com/TownyAdvanced/Towny/issues/7023). - Fix support for Vanished players on servers using PremiumVanish and MC versions older than 1.19.3. ***Towny Sponsors
I want to give a big thank you to all of my sponsors:
These are the people that help to make Towny's support and development as active as it is,
and who supported me during this pre-release of Towny.
If you want to support the developer, become a sponsor.
(It's just like Patreon but instead 100% of your support goes to the developer.)Plus there are Sponsor Plugins!
Questions
Placeholders
##### Release contains: Towny 0.99.6.0 TownyChat 0.109
|Welcome to Towny 0.99.6.0.| | ---- | | Towny 0.99.6.0 is the seventh release in the 0.99.\*.\* series! | | 0.99.6.0 supports all versions of Minecraft 1.16 and newer. | | This version adds support for MC 1.20.2, as well as a smattering of new commands and features. | | This version contains critical fixes that you want on your server! | | This is a drag-and-drop update: just replace your old .jars with the new ones and Towny will take care of the rest of the update by itself. |
➕ Added (41)
***➕ Automatic Config Edits (1)
✨ Command Changes (13)
📕 Config Changes (7)
🔑 Permission Node Changes (9)
💻 API Changes (3)
***🔧 Fixed (50)
***🌏 Language Updates (0)
🌏 Dependency Updates (12)
👽 Placeholder Updates (0)
💬 TownyChat Changes (0)
Towny Sponsors
I want to give a big thank you to all of my sponsors:
These are the people that help to make Towny's support and development as active as it is,
and who supported me during this release of Towny.
If you want to support the developer, become a sponsor.
(It's just like Patreon but instead 100% of your support goes to the developer.)Plus there are Sponsor Plugins!
Questions
Placeholders
Cumulative changes since 0.99.5.0
0.99.5.20
- Fix /plot info throwing NPE when using_economy is false. - Closes [#7000](https://togithub.com/TownyAdvanced/Towny/issues/7000). - Add hasTranslation method, courtesy of Warrior with PR [#7001](https://togithub.com/TownyAdvanced/Towny/issues/7001).0.99.5.19
- Update PowerRanks warning to mention their version that fixes the incompatibility. - API: Added TownyObjectFormattedNameEvent - Thrown when a Resident, Town or Nation is returning a getFormattedName() value. - This is used to alter the prefix or postfix that flanks a TownyObject name, usually a title, surname, townlevel/nationlevel prefix/postfix. - Closes [#6995](https://togithub.com/TownyAdvanced/Towny/issues/6995). - Add the ability to hide towns from the /towny top and /t list by commands (as well as the PAPIPlaceholders.) - Closes [#6996](https://togithub.com/TownyAdvanced/Towny/issues/6996). - New Command: /ta town TOWNNAME toggle visibleontoplists \[on|off] - Used by an admin to toggle a town's visiblity on the /towny top, /t list by commands (as well as the PAPIPlaceholders.) - Bump org.apache.commons:commons-compress from 1.23.0 to 1.24.0. - Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.5.0 to 3.6.0. - Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.21.0 to 3.22.0.0.99.5.18
- Add protection for parrots being fed cookies. Now requires passing a destroy test. - Closes [#6981](https://togithub.com/TownyAdvanced/Towny/issues/6981). - Remove exception based control flow from map hud, courtesy of Warrior with PR [#6972](https://togithub.com/TownyAdvanced/Towny/issues/6972). - Remove iConomy soft dependency, courtesy of Warrior with PR [#6980](https://togithub.com/TownyAdvanced/Towny/issues/6980). - Bump net.coreprotect:coreprotect from 22.0 to 22.1. - Bump mockbukkit to 3.21.0. - Fix tourist-blacklisted commands not being usable in the wilderness. - Fix seeing an errant permission string when running a /res toggle addon command.0.99.5.17
- Add permission node that bypasses deny_bed_use config setting. - Closes [#6956](https://togithub.com/TownyAdvanced/Towny/issues/6956). - New Permission Node: towny.bypass_bed_restriction - description: Makes the player not subject to bed-use restrictions. - default: false - Run sync confirmations on the player's region, courtesy of Warrior with PR [#6960](https://togithub.com/TownyAdvanced/Towny/issues/6960). - Fix a lot of IDE warnings, courtesy of Warrior with PR [#6658](https://togithub.com/TownyAdvanced/Towny/issues/6658). - Add gitattributes file, courtesy of Warrior with PR [#6962](https://togithub.com/TownyAdvanced/Towny/issues/6962). - Add missing deprecation annotations, courtesy of Warrior with PR [#6963](https://togithub.com/TownyAdvanced/Towny/issues/6963). - Fix exception when putting a group for sale with eco off, courtesy of Warrior with PR [#6970](https://togithub.com/TownyAdvanced/Towny/issues/6970). - Closes [#6969](https://togithub.com/TownyAdvanced/Towny/issues/6969). - Improve trident lightning protection, courtesy of Warrior with PR [#6964](https://togithub.com/TownyAdvanced/Towny/issues/6964). - Replace http urls with https, courtesy of Warrior with PR [#6965](https://togithub.com/TownyAdvanced/Towny/issues/6965). - Area effect cloud protection improvements, courtesy of Warrior with PR [#6967](https://togithub.com/TownyAdvanced/Towny/issues/6967).0.99.5.16
- Make the default resident about configurable, courtesy of Warrior with PR [#6954](https://togithub.com/TownyAdvanced/Towny/issues/6954). - New Config Node: resident_settings.default_about - Default: /res set about \[msg] - The default resident about text, shown in the resident's status screen. - Fix removing Town from residents not being able to delete 1 man towns. - Add protection for milkable animals, using a destroy test. - Automatic Config Edit: Farm Plots allowedBlock lists will have COW_SPAWN_EGG,GOAT_SPAWN_EGG,MOOSHROOM_SPAWN_EGG added to them. - Fix the NewHourEvent being started with the incorrect delay.0.99.5.15
- Add a new plotgroup mode for residents to toggle. - Allows a resident to set /res toggle plotgroup, which will auto-group walked-into plots, as long as the resident has a plotgroupname set in memory. - The plotgroupname is automatically set when a resident successfully runs /plot group add NAME. - Closes [#6404](https://togithub.com/TownyAdvanced/Towny/issues/6404). - Fix being unable to run Resident-based TownyAddonCommands from the console. - Fix bank history books showing the incorrect balances, a side effect of a now un-needed patch to an older issue. - Upgrade HelpMenus to accept Translatables for multilanguage help menus. - Refactor Resident Command, add HelpMenus for everything that was not yet using them. - Only warn the log when the world isn't loaded 20 ticks after Towny first tries to load it. - Add translatable descriptions to all of the HelpMenus.0.99.5.14
- API: Add TownyAPI#getTownName(Player). - Add "about" section to resident status screen, courtesy of Fruitloopins with PR [#6944](https://togithub.com/TownyAdvanced/Towny/issues/6944). - Catch exceptions during plot group saving, courtesy of Warrior with PR [#6927](https://togithub.com/TownyAdvanced/Towny/issues/6927).0.99.5.13
- Add ability for towns and nations to have a negative fixed-rate tax amount. - Closes [#6705](https://togithub.com/TownyAdvanced/Towny/issues/6705). - New Config Option: economy.daily_taxes.allow_negative_town_tax - Default: false - If enabled, and a town tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every resident being paid by the town bank (if the town can afford it.) - New Config Option: economy.daily_taxes.allow_negative_nation_tax - Default: false - If enabled, and a nation tax is set to a negative amount and is a fixed amount (not percentage,) it will result in every town in the nation being paid by the nation bank (if the nation can afford it.) - Add warning about MyCommand taking over /t in the startup. - Bump com.github.ElgarL:groupmanager from 2.9 to 3.2. - Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.19.0 to 3.19.1. - Fix Hibernated Residents table being keyed improperly. - Closes [#6936](https://togithub.com/TownyAdvanced/Towny/issues/6936). - Add ability for mayors to put their Towns up for sale, and for other players to buy them, courtesy of Fruitloopins with PR [#6934](https://togithub.com/TownyAdvanced/Towny/issues/6934). (First-Time Contributor!) - Closes [#6478](https://togithub.com/TownyAdvanced/Towny/issues/6478). - New Command: /t forsale/fs \[$] - Puts town up for sale at the specified amount - Requires towny.command.town.forsale - New Command: /t notforsale/nfs - Cancels town sale - Requires towny.command.town.notforsale - New Command: /t buytown \[town] - Buy a town that is for sale - Requires towny.command.town.buytown - New Command: /ta town \[town] forsale/fs \[$] - Admin command to force town sale at specified price - Requires towny.command.townyadmin.town.forsale - New Command: /ta town \[town] notforsale/nfs - Admin command to force cancel town sale - Requires towny.command.townyadmin.town.notforsale - New permission nodes: (All of which are child nodes of towny.command.town.\*, no townyperms.yml changes are required for standard installations.) - towny.command.town.forsale - towny.command.town.notforsale - towny.command.town.buytown - New permission nodes: (All of which are child nodes of towny.command.townyadmin.town.\*, no townyperms.yml changes are required for standard installations.) - towny.command.townyadmin.town.forsale - towny.command.townyadmin.town.notforsale - Add the ability to set colours for TownBlockTypes. - The TownBlockTypes section by default will come with a new "colour:" option. - Only the Shop plot currently being configured with a colour (as is the previous behaviour.) - Existing configs will have to add the colour: line to each TownBlock Type if they want to take advantage. - Closes [#6115](https://togithub.com/TownyAdvanced/Towny/issues/6115).0.99.5.12
- Add ability for mayors to exempt their townblocks from charging plot taxes. - Mayors can toggle a plot's status using /plot toggle taxed. - When false, the owner of that plot will pay no plot tax. - A Plot Tax: \[Amount|Untaxed] blurb will now appear in the townblock status screens. - Closes [#3675](https://togithub.com/TownyAdvanced/Towny/issues/3675). - New Command: /plot toggle taxed - Uses the towny.command.plot.asmayor permission node. - Allows a mayor to decide whether a plot will require the plotowner to pay the plot taxes. - API: PlotToggleTaxedEvent - Cancellable event that stops a mayor toggling taxation off/on on a townblock. - Add ability to customize the dimensions of the ASCII map seen in /towny map and the /res toggle map commands. - Closes [#6117](https://togithub.com/TownyAdvanced/Towny/issues/6117). - New Config Option: ascii_map_symbols.map_height - Default: 7 - The height of the map shown in /towny map and /res toggle map. - Minimum 7, maximum 18. - New Config Option: ascii_map_symbols.map_width - Default: 27 - The width of the map shown in /towny map and /res toggle map. - Minimum 7, maximum 27, only odd numbers are accepted. - Replace lang3 validate with guava, courtesy of Warrior with PR [#6931](https://togithub.com/TownyAdvanced/Towny/issues/6931).0.99.5.11
- Fix a town being able to be reclaimed a second time if the first Confirmation hadn't timed out. - Add placing items onto Campfires cause a Build test. - Closes [#6894](https://togithub.com/TownyAdvanced/Towny/issues/6894). - Fix all the weirdness around world entity key loading, courtesy of Warrior with PR [#6901](https://togithub.com/TownyAdvanced/Towny/issues/6901). - Speed up calculating bonus block costs, courtesy of Warrior with PR [#6919](https://togithub.com/TownyAdvanced/Towny/issues/6919). - Add spigot fallback to sign open event, courtesy of Warrior with PR [#6920](https://togithub.com/TownyAdvanced/Towny/issues/6920).0.99.5.10
- Fix exception after creating a new PlayerCache, courtesy of Warrior with PR [#6911](https://togithub.com/TownyAdvanced/Towny/issues/6911). - Add contributors to plugin.yml, courtesy of Warrior with PR [#6915](https://togithub.com/TownyAdvanced/Towny/issues/6915).0.99.5.9
- Fix edge case scenario where NPCs can be treated like Players in Combat. - Add towny.receives-plot-notifications permission, courtesy of invpt with PR [#6908](https://togithub.com/TownyAdvanced/Towny/issues/6908). (First-Time Contributor!) - Improve move event listener/player cache a bit, courtesy of Warrior with PR [#6910](https://togithub.com/TownyAdvanced/Towny/issues/6910). - Use constant for line separator string, courtesy of Warrior with PR [#6896](https://togithub.com/TownyAdvanced/Towny/issues/6896). - Make the ecowarn line log on the INFO level [#6895](https://togithub.com/TownyAdvanced/Towny/issues/6895). - Bump net.coreprotect:coreprotect from 21.3 to 22.0. - Bump com.github.seeseemelk:MockBukkit-v1.20 from 3.17.0 to 3.19.0. - Add Position object, courtesy of Warrior with PR [#6536](https://togithub.com/TownyAdvanced/Towny/issues/6536). - The position object aims to resolve issues with world manager plugins that load after Towny loads, causing spawns to be wiped. - By representing these spawns with an object that's not associated with a loaded bukkit world, but instead our own internal TownyWorld, we can successfully load them every time, regardless of plugin load order.0.99.5.8
- Cancel scheduled tasks on shutdown, courtesy of Warrior with PR [#6890](https://togithub.com/TownyAdvanced/Towny/issues/6890). - Make it possible to recover from safemode without restarting, courtesy of Warrior with PR [#6526](https://togithub.com/TownyAdvanced/Towny/issues/6526). - If you have managed to put your server into safemode, and you can manage to fix what's caused it, you can now use /ta reload all to have towny re-attempt loading. - Remove an outdated comment, courtesy of Warrior with PR [#6892](https://togithub.com/TownyAdvanced/Towny/issues/6892).0.99.5.7
- Fix ConcurrentModificationError in saving the regen list. - Fix chunk notification tasks still running when Towny has disabled itself. - Use concurrent collection for regen queue, courtesy of Warrior with PR [#6889](https://togithub.com/TownyAdvanced/Towny/issues/6889). - Cancel chunk notification tasks on logout, courtesy of Warrior with PR [#6888](https://togithub.com/TownyAdvanced/Towny/issues/6888). - Bump org.junit.jupiter:junit-jupiter-api from 5.9.3 to 5.10.0. - Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0.0.99.5.6
- Add getMapColor to Government, courtesy of ewof [#6881](https://togithub.com/TownyAdvanced/Towny/issues/6881). (First-Time Contributor!) - Fix returning early in the PlayerInteractEvent listeners, courtesy of Warrior with PR [#6886](https://togithub.com/TownyAdvanced/Towny/issues/6886). - Fix Item Registry matching incorrectly, courtesy of Warrior with PR [#6885](https://togithub.com/TownyAdvanced/Towny/issues/6885). - Closes [#6868](https://togithub.com/TownyAdvanced/Towny/issues/6868).0.99.5.5
- Fix EconomyAccount removals not paying their value into the ClosedEconomy Server Account. - Closes [#6874](https://togithub.com/TownyAdvanced/Towny/issues/6874). - Remove redundant 1.20 check, courtesy of Warrior with PR [#6873](https://togithub.com/TownyAdvanced/Towny/issues/6873). - Add testing for registry lists, courtesy of Warrior with PR [#6871](https://togithub.com/TownyAdvanced/Towny/issues/6871). - Skip tests by default, courtesy of Warrior with PR [#6878](https://togithub.com/TownyAdvanced/Towny/issues/6878). - Refactor the regen API to use hashmaps, courtesy of Warrior with PR [#6827](https://togithub.com/TownyAdvanced/Towny/issues/6827). - Make a couple CombatUtil methods more reliable.0.99.5.4
- Fix PlayerInteractEvent throwing NoSuchFieldError on 1.19.4 servers using a 1.20 datapack. - Fix registry lists' add method not working as expected, courtesy of Warrior with PR [#6869](https://togithub.com/TownyAdvanced/Towny/issues/6869). - Closes [#6866](https://togithub.com/TownyAdvanced/Towny/issues/6866). - Fix teleport refund being done synchronously, courtesy of Warrior with PR [#6870](https://togithub.com/TownyAdvanced/Towny/issues/6870).0.99.5.3
- Fix personal permission line loading in TownBlocks. - Closes [#6856](https://togithub.com/TownyAdvanced/Towny/issues/6856). - Fix Towny uncancelling PlayerInteractEvents. - Closes [#6861](https://togithub.com/TownyAdvanced/Towny/issues/6861). - Remove unneeded filtering from matchRegistry, courtesy of Warrior with PR [#6851](https://togithub.com/TownyAdvanced/Towny/issues/6851). - Cache a townblock's worldcoord/pos, courtesy of Warrior with PR [#6853](https://togithub.com/TownyAdvanced/Towny/issues/6853). - Allow negating nodes with {townname} and {nationname}, courtesy of Warrior with PR [#6850](https://togithub.com/TownyAdvanced/Towny/issues/6850). - Allows nodes with {townname} and {nationname} to be prefixed with a -. - Use material key for cache debug message, courtesy of Warrior with PR [#6852](https://togithub.com/TownyAdvanced/Towny/issues/6852). - Implement a filter method for registry lists, courtesy of Warrior with PR [#6859](https://togithub.com/TownyAdvanced/Towny/issues/6859). - Take care of all the places we weren't using Locale.ROOT with toLowerCase().0.99.5.2
- Fix a typo in TownyUniverse javadoc, courtesy of Warrior with PR [#6838](https://togithub.com/TownyAdvanced/Towny/issues/6838). - Remove underscores from plot names in chunk notifs, courtesy of Warrior with PR [#6830](https://togithub.com/TownyAdvanced/Towny/issues/6830). - Closes [#6829](https://togithub.com/TownyAdvanced/Towny/issues/6829). - Use better method for determining invitee online status, courtesy of Warrior with PR [#6848](https://togithub.com/TownyAdvanced/Towny/issues/6848). - Add coreprotect integration, courtesy of Warrior with PR [#6825](https://togithub.com/TownyAdvanced/Towny/issues/6825). - Adds integration with coreprotect so that people using it can easily rollback/lookup things done by towny. - New config option: plugin.interfacing.coreprotect_support - Default: true - If enabled, blocks that get regenerated by Towny, such as revert-on-unclaim and explosion regeneration will be logged with CoreProtect. - Actions are logged with the #towny user, so Towny's actions can easily be undone using user:#towny. - Add support for Paper's SpawnReason, allowing for the summoning of mobs which are spawned into towns which have mobs off and other nice things. - Closes [#6832](https://togithub.com/TownyAdvanced/Towny/issues/6832). - New Config Option: protection.town_mob_removal_ignored_spawn_causes - Default: "" (none) - A comma seperated list of spawn causes, if an entity has a spawn cause that is in this list they will not be removed by town mob removal. - For the list of valid spawn causes, see https://jd.papermc.io/paper/1.20/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html - Due to technical reasons, this setting only works on Paper servers. - Add getOfflinePlayerIfCached to BukkitTools, courtesy of Warrior with PR [#6847](https://togithub.com/TownyAdvanced/Towny/issues/6847). - Use invokeExact where possible, courtesy of Warrior with PR [#6849](https://togithub.com/TownyAdvanced/Towny/issues/6849). - Remove essentials maven dependency, courtesy of Warrior with PR [#6842](https://togithub.com/TownyAdvanced/Towny/issues/6842).0.99.5.1
- Handle top placeholders better, courtesy of Warrior with PR [#6821](https://togithub.com/TownyAdvanced/Towny/issues/6821). - Fixes top placeholders failing on towns with spaces in their name. - Closes [#6814](https://togithub.com/TownyAdvanced/Towny/issues/6814). - User internal class for expanded scheduling check, courtesy of Warrior with PR [#6822](https://togithub.com/TownyAdvanced/Towny/issues/6822). - Fix exception being thrown for empty key in wilderness entity regen lists, courtesy of Warrior with PR [#6826](https://togithub.com/TownyAdvanced/Towny/issues/6826). - Make towny handle longer world names on sql. - Closes [#6796](https://togithub.com/TownyAdvanced/Towny/issues/6796).Towny Sponsors
I want to give a big thank you to all of my sponsors:
These are the people that help to make Towny's support and development as active as it is,
and who supported me during this pre-release of Towny.
Configuration
📅 Schedule: Branch creation - "on monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.