0.97.0.14 for MC 1.14.*/1.15.*/1.16.*/1.17.*
Pre-release
Pre-release
- Add Trusted to TownBlocks and Towns, PermOverrides to TownBlocks, courtesy of Warriorrrr with PR #5085.
- Use /town trust add|remove NAME or /plot trust add|remove NAME to give people full build/destroy/switch/itemuse permissions in the given town or plot.
- Use /plot perm add|remove NAME to add a player to a plot's permission overrides.
- Use /plot perm GUI to open the plot permission editor.
- Hover over the player's head who you've added to the plot to see their BDSI settings.
- Click their head to edit the individual build/destroy/switch/itemuse settings.
- PlotGroups also have the same ability to have trusted|permission overrides applied to players for the entire plotgroup.
- Use the same /plot group trust|perm commands.
- New Commands:
- /town trust add|remove NAME
- /plot trust add|remove NAME
- /plot perm add|remove NAME
- /plot perm gui
- /plot group trust add|remove NAME
- /plot group perm add|remove NAME
- /plot group perm gui
- New Permission Nodes:
- These are all child nodes of towny.command.plot.perm (which is already in townyperms.yml) no editing required.
- towny.command.plot.perm.*
- towny.command.plot.perm.gui
- towny.command.plot.perm.add
- towny.command.plot.perm.remove
- Mayors are already given this via towny.command.town.*
- towny.command.town.trust
- New Permission Nodes which will automatically be given to the nomad rank:
- towny.command.plot.trust
- towny.command.plot.group.*
- towny.command.plot.group.trust
- towny.command.plot.group.perm
- Remove Integrated FlagWar, courtesy of TheFlagCourier with PR #5081.
- Completes the separation of FlagWar into a standalone .jar available here: https://github.com/TownyAdvanced/FlagWar
- This new jar has already had a couple new features added which were not available in Towny's version of FlagWar.
- There could be some bugs still in the standalone version so if you see something, say something.
- Bugs can be reported on the issue tracker: https://github.com/TownyAdvanced/FlagWar/issues
- API: DisplayedNationsListSortEvent added courtesy of Goosius with PR #5084.
- Allows for a plugin to alter how nations are listed on /n list.
- Bump Language Files to 0.113.
- Townyperms.yml now receives automatic updates (like the config and world files.)
- This was last thing which sometimes required admin intervention.
- Enjoy even more drag-and-drop Towny updates.
- Add config option for limiting ally amounts, courtesy of Warriorrrr with PR #5082.
- Closes #5064.
- New Config Option: global_nation_settings.max_allies
- Default: -1
- The maximum amount of allies that a nation can have, set to -1 to have no limit.
- Fix /town unclaim throwing Index out of bounds error, courtesy of Silverwolfg11 with PR #5088.
In Other News, Sponsors now have a new plugin available to them:
TownyHistories What happens when a Town is deleted? Where Towny leaves off, TownyHistories takes over. Towns become Ruins, appearing on your Dynmap, Lecterns mark the old spawn point with a book that has recorded some historical information about the now defunct Town, and more... See Discord for details!
Cumulative changes since 0.97.0.0
0.97.0.13
- Fix /town claim throwing Index 0 out of bounds for length 0 error.
0.97.0.12
- Fix placeholders starting with %townyadvanced_player_ not working.
- Version checker, courtesy of Warriorrrr with PR #5016.
- Automatically checks for updates on startup, and notifies players with the update notifications permission node when logging in (if enabled).
- Servers can choose to be notified of Release versions.
- If a server is using a pre-release version, and they have the checker enabled, they will be notified of new pre-releases (ignoring the release-versions-only option.)
- Presents a download link.
- New permission node: towny.admin.updatealerts
- Child node of towny.admin.
- New config node: plugin.update_notifications.alerts
- Default: true
- If enabled, players with the towny.admin.updatealerts permission will receive an update notification upon logging in.
- New config node: plugin.update_notifications.major_only
- Default: true
- If enabled, only full releases will trigger notifications if you are running a full release, unless you're using a pre-release version.
- New Placeholder: %townyadvanced_player_location_plot_owner_name%
- Displays the name of the resident who owns the plot, or blank if no one personally owns it.
- Closes #4916.
- Allow for plots to be claimed by clicking the $ on the ascii map.
- Closes #4020.
- Add ability for a nomad to be prompted to a join a town when they /plot claim, if the town is open and the townblock is not an embassy plot.
- Closes #4019.
0.97.0.11
- Add WildernessMapEvent awareness to the /towny map hud.
- Other plugins like TownyCamps, TownyHistories now appear on the /towny map hud.
- Fix footer of the /town jail list output.
- Alter non-player vs non-player combat:
- In the wilderness it is allowed.
- If it is a tamed wolf, and the owner is online, and the owner can destroy in the plot where the defender non-player is, and the non-player is a protected entity, the wolf murdering other non-players is allowed.
- Closes #5059.
- Make applicable placeholders available when a player is offline, courtesy of BlakeStevenson with PR #4962.
- All except for player_plot_* and player_location_* placeholders should function for offline players.
- Update Spanish file and fix type in English file, courtesy of ElMoha943 with PR #5070. (First-Time Contributor!)
- Fix ChunkNotifications not correctly handling not-for-sale plotgroups.
- Closes #5069.
- Fix ChunkNotifications creating an error when a forsale plot is entered into where the economy is not active.
- Plot Group Overhaul
- Adds ability to transfer a townblock from one group to another using /plot group add NAME.
- Closes #5050.
- Removes the plotgroups.txt file.
- All files in the plotgroups folder will be loaded.
- Plot Groups now keep a uniform perm line.
- PlotGroups which are for sale will show a $ symbol on the ascii and hud maps.
- PlotGroups now have their own hovertext when viewed in the /towny map.
- Fix empty plotgroups not being deleted.
- Rewrite of the SQL saving/loading for plotgroups is done as well.
- Fixes delete code which would never work.
- Removes a redundant SQLSource method loadJail(Jail).
- Properly PlotGroup.setResident(Resident) where it was not.
- Adds ability to transfer a townblock from one group to another using /plot group add NAME.
- New Command: /plot group delete
- Deletes a plot group entirely, requested in #5050.
- New Command: /town plotgrouplist (townname) (page)
- Lists a town's plotgroups with forsale and price indicated.
- Closes #4431.
- New Permission Node: towny.command.plot.group.delete
- Child node of towny.command.plot.group.*
- Not needed to be added to townyperms.yml.
- New Permission Node: towny.command.town.plotgrouplist
- Child node of towny.command.town.*
- Not needed to be added to townyperms.yml.
0.97.0.10
- Fix force-explosion world setting not forcing explosions in towns.
- API: Add WildernessMapEvent
- Event which allows third-party plugins to change what is show on the ASCII map, in the wilderness.
- Fix /tw toggle plotcleardelete toggling the wrong feature.
- New Command: /tw toggle unclaimblockdelete {on|off}
- Turns on/off the delete-blocks-on-unclaim feature in the world.
- Fix Tamed Wolfs being attackable where PVP is off.
- Fix SQL code loading new Jails.
- Prevent commas being used in plot group names.
- Closes #5049.
- Creates a cache of sorts for the wilderness coords on the Towny ASCII map.
0.97.0.9
- Fix a NoSuchMethodError that can occur on 1.15, courtesy of Warriorrrr with PR #5030.
- Closes #5029.
- Improve safe mode messages in-game, courtesy of EuGNosii with PR #5013.
- Bump language files to 0.110.
- Fix Warzone Listener Able to Query null PlayerCache.
- Allow ruined towns to be made public.
- Closes #4959.
- New Config Option: town_ruining.town_ruins.ruins_become_public
- Default: false
- If this is true, when a town becomes a ruin they also receive public status, meaning anyone can use /t spawn NAME to teleport to that town.
- Change max-hours for Town Ruins from 1000 to 8760 (one year.)
- Closes #4970.
- Add ability to teleport newly-outlawed players who are within the town's borders.
- Closes #4944.
- New Config Option: global_town_settings.outlaw_teleport_away_on_becoming_outlawed
- Default: false
- If set to true, when a player is made into an outlaw using /t outlaw add NAME, and that new outlaw is within the town's borders, the new outlaw will be teleported away using the outlaw_teleport_warmup.
- Add ability to limit how far away an outpost can be made from a town's existing claims.
- Closes #3065.
- New Config Option: town.max_distance_for_outpost_from_town_plot
- Default: 0
- Set to 0 to disable. When above 0 an outpost may only be claimed within the given number of townblocks from a townblock owned by the town.
- Setting this to any value above 0 will stop outposts being made off-world from the town's homeworld.
- Do not set lower than min_distance_for_outpost_from_plot above.
- Adds limits to how often and how far a town can move their homeblock.
- Closes #4957.
- New Config Option: global_town_settings.homeblock_movement_cooldown_hours
- Default: 0
- When set above 0, the amount of hours a town must wait after setting their homeblock, in order to move it again.
- New Config Option: global_town_settings.homeblock_movement_distance_limit
- Default: 0
- When set above 0, the furthest number of townblocks a homeblock can be moved by.
- Example: setting it to 3 would mean the player can only move their homeblock over by 3 townblocks at a time.
- Useful when used with the above homeblock_movement_cooldown_hours setting.
- Handle dispenser damage correctly, courtesy of Warriorrrr with PR #5039.
- Finishes some ancient TODOs that meant Dispensers weren't really tested against PVP.
- API: TownyDispenserDamageEntityEvent a TownyDamageEvent.
- Send a warning if /tw toggle is used when usingtowny is false, courtesy of Warriorrrr with PR #5040.
- es-419.yml update, courtesy of EuGNosii with PR #5042.
0.97.0.8
- Allow ruined towns' residents to be able to use /town spawn.
- Fix loading residents who have friended themselves.
- Add ability to prevent outlaws from teleporting or using certain commands while in a town, courtesy of drewdorris with PR #5012 (First-Time Contributor!)
- New Config Option: global_town_settings.allow_outlaws_to_teleport_out_of_town
- Default: true
- Prevents outlawed users teleport commands while located in a town they're outlawed in.
- New Config Option: global_town_settings.allow_outlaws_use_teleport_items
- Default: true
- If false, outlawed players in towns cannot use items that teleport the player, ie: Ender Pearls & Chorus Fruit.
- Setting this to false requires allow_outlaws_to_teleport_out_of_town to also be false.
- New Config Option: global_town_settings.outlaw_blacklisted_commands
- Default: somecommandhere,othercommandhere
- Commands outlawed users can't use while inside that town.
0.97.0.7
- New Command: /town purge {days}
- Kicks residents from the town who have been inactive for the given number of days.
- NPCs and mayors are exempt.
- New Permission Node: towny.command.town.purge
- Child node of towny.command.town.*
- Not required to be added to the townyperms.yml.
- Fix wilderness entity explosions' reverting being mucked with by the EventWar.
- Closes #5014.
- Fix towny.bypass_death_costs node not working in all situations.
- Fix players res friending themselves or NPCs, courtesy of Warriorrrr with PR #5017.
- Fix building w/o github-actions maven profile; Ensure JVM 8 compatiblity with JDK9+, courtesy of FlagCourier with PR #5019.
- Fix ExceptionInInitializerError preventing Towny from starting up.
0.97.0.6
- Add upkeep costs for Towns to toggle and remain neutral.
- Similar to nation peaceful costs.
- Closes #5003.
- Fix nations not paying peaceful upkeep if their nation upkeep was 0.
- New Config Option: economy.price_town_neutrality
- Default: 25.0
- The daily upkeep to remain neutral, paid by the Town bank. If unable to pay, neutral/peaceful status is lost.
- Language files bumped to 0.108.
- Improve message shown to towns which are invited to a nation.
- Closes #4998.
- Give Glowing Item Frames the same protections we give to the differently-abled Item Frames.
0.97.0.5
- Fix Bonemeal usage not working.
- Add candles to the bypass for flint & steel.
- Protect candles from being placed on cakes.
- Switch over to using new cancelling for PojectileHitEvents.
0.97.0.4
- Fix tree/mushroom structure growth on plot borders not being tested correctly.
- Update to add compatibility for MC 1.17, courtesy of Warriorrrr and LlmDL with PR #5001.
- Should account for most of the changes so far. More to come as the API is fleshed out by Spigot.
- Revert on unclaim feature will probably not like servers using the World Height data pack.
- Config and world files will update their lists of blocks-ignored-from-regeneration automatically.
0.97.0.3
- Fix SQL resident loading new jail properties hitting NPEs
- Closes #4990.
- Translate es-419 strings (0.107), courtesy of EuGNosii with PR #4983.
- Update zh-TW.yml, courtesy of shou692199 with PR #4992.
- Town and Nation lists are now cached, able to be updated after 10 minutes.
- Add LuckPerms Contexts, courtesy of Warriorrrr with PR #4966.
- Adds towny contexts to LuckPerms. At the moment this is very similar to our townyperms.yml, but the difference is that these can be used together with other contexts (per world permissions for example).
- Includes Resident, Mayor, King, InsideTown, InsideOwnTown, InsideOwnPlot.
- New Config Option: plugin.interfacing.luckperms_contexts
- Default: true
- If enabled, Towny contexts will be available in LuckPerms.
- Map HUD, courtesy of Warriorrrr with PR #4996.
- New Command: /towny map hud
- Activates the map in the player's scoreboard.
0.97.0.2
- Validate /plot group fs input, courtesy of Warriorrrr with PR #4968.
- Closes #4960.
- Fix addon api exception in the towny command, courtesy of Warriorrrr with PR #4967.
- Closes #4965.
- Shade in slf4j, fixing ClassNotFoundException: org.slf4j.LoggerFactory
- Closes #4950.
- Update es-419, courtesy of EuGNosii with PR #4964.
- Fix towns that already have a nation being able to be sent nation invites.
- Closes #4963.
- Fix nations not losing their spawn point.
- Closes #4961.
- Fix command always being null, courtesy of Warriorrrr with PR #4974.
- Closes #4971.
- Add /ta command for getting exact claimedat time, courtesy of Warriorrrr with PR #4911.
- New Command: /ta plot claimedat
- Shows when the plot was claimed.
- Automatically clean up unused NPC residents, courtesy of Warriorrrr with PR #4972.
- Parse hex colours in resident titles in the status screens.
- Closes #4977.
- Jail Overhaul Project (Begun in January 2021):
- New Jail Object and JailUtil.
- Jails are stored in the database in the towny\data\jails\ folder.
- Towns no longer stores a list of jailspawns.
- Old town jailspawns will be converted into new Jail objects on first load.
- Jailed residents will not keep their jailed status, getting a clean slate to start from.
- Jailing and unjailing code is much better than it used to be.
- The jailing system is very much the same still, but there are many new nice things.
- Add Jail Book.
- The book is given to players when they are jailed.
- It explains to the jailed player what they can do to get out of jail, based on how jails have been configured on the server.
- Closes #4686.
- Jail plots can now have more than one "cell" or spawn location.
- SpawnPoints particles are used to show the jail cell spawns.
- Cells are added/removed using /plot jailcell add|remove
- Closes #3106.
- The jailed message now includes who ran the jail command.
- Closes #4096.
- Jail plots can now have PVP disabled in them (configurable.)
- Closes #4659.
- Chorus Fruit are now lumped in with the Ender Pearl in a new config option for whether teleport items can be used by jailed players.
- Closes #4903.
- Add optional logout protection for newly-jailed players.
- Newly jailed players that logout before they are teleported to jail will be killed, when the feature is activated.
- The player is warned of this to prevent surprises.
- Similar to combat-logging plugins.
- Add new-player jail-immunity.
- Players who first joined the server cannot be jailed for their first hour of playtime (configurable.)
- Add Town PrimaryJail.
- The PrimaryJail is the default jail for a town.
- It is used when the /t jail NAME command is used (with no jail/cell/hours specified.)
- It is used when outlaw and enemies are jailed by being killed.
- PrimaryJail is set using /t set primaryjail.
- New Permission Nodes:
- towny.command.plot.jailcell - allows for adding/removing of jail cells in a jail plot.
- towny.command.town.jail
- towny.command.town.jail.list
- towny.command.town.unjail
- towny.command.town.set.primaryjail
- towny.command.plot.jailcell
- Removed Permission Node: - towny.command.town.toggle.jail
- New Commands:
- /plot jailcell add - Adds a jail cell to a jail plot, where the player is stood.
- /plot jailcell remove - Removes a jail cell from a jail plot, where the player is stood.
- /town jail list - Shows jail number, name, coord, cellcount and which jail is the primary jail.
- /town jail {name} - Jails the given player for 1 hour, must be a resident of your own town.
- /town jail {name} {hours} - Jails the given player for the given hours.
- /town jail {name} {hours} {jail} - Jails the given player for the given hours, in the given jail plot (which is a number.)
- /town jail {name} {hours} {jail} {cell} - Jails the given player for the given hours, in the given jail plot and jail cell (which are both numbers.)
- /town unjail {name} - Unjails someone in your town's jail.
- /town set primaryjail - Sets your town's primary jail.
- Removed Command: /town toggle jail
- New Config Options:
- jail.outlaw_jail_hours
- Default: 5
- How many hours an attacking outlaw will be jailed for.
- jail.do_jail_plots_deny_pvp
- Default: false
- When true, jail plots will prevent any PVP from occuring. Applies to jailed residents only.
- jail.prevent_newly_jailed_players_logging_out
- Default: false
- When true, Towny will prevent a person who has been jailed by their mayor/town from logging out if they do log out they will be killed first, ensuring they respawn in the jail.
- jail.new_player_immunity
- Default: 1h
- How long do new players have to be on the server before they can be jailed?
- jail.jail_allows_teleport_items
- Default: false
- If true jailed players can use items that teleport, ie: Ender Pearls & Chorus Fruit, but are still barred from using other methods of teleporting.
- Closes #4903
- jail.outlaw_jail_hours
- Removed Config Option: jail.outlaw_jail_days
- New Jail Object and JailUtil.
- Bump Language Files to 0.107.
0.97.0.1
- Fix german.yml, courtesy of relkai with PR #4924.
- API: Add TownyAPI.getResidentOrNull(TownBlock).
- Gets the resident who owns the townblock or null if unowned.
- Best used after TownBlock.hasResident();
- API: Add TownyAPI.getTownOrNull(TownBlock).
- Gets the town who owns the townblock or null if wilderness.
- Best used after TownBlock.hasTown();
- Fix /n set king declaring that the capital has too many residents.
- Fix potential console spam from adventure, courtesy of Warriorrrr with PR #4939.
- bStats to 2.2.1 (was 1.x), Shade it; make isSpigot() private, rename it. Courtesy of TheFlagCourier with PR #4934.
- Replace deprecated methods on TownyLogger, courtesy of EuGNosii with PR #4933.
- Update language file es-419.yml, courtesy ofBlock commands from being ran by outsiders #4953#4910.
- Add Command Addon API, courtesy of Warriorrrr with PR #4886.
- Adds a new command addon API, that allows plugin developers to add their own sub commands to Towny's existing commands.
- Replace player.sendMessage() with TownyMessaging.sendMessage().
- Undo PR #4933 to retain backwards compatibility.
- Fix no feedback when using a /plot command in the wilderness.
- Fix regression: null message shown from /t spawn and /n spawn when used from the wilderness.
- API: Add WorldCoord.getTownOrNull().
- Gets the town at that WorldCoord or null if it is in the wilderness.
- Best used after WorldCoord.hasTownBlock();
- Fix long town/nation names being able to break the TownyFormatter/ChatTools.
- Closes #4942.
- Fix sheep being protected from shearing in the wilderness.
- Improve /town claim auto, works again but doesn't always claim everything it could in one use.
- Fix tamed dogs not being hittable inside towns, courtesy of Warriorrrr with PR #4955.
- Closes #4954.
- Fix a few tab completion issues with the addon API, courtesy of Warriorrrr with PR #4943.
- Add commands from being ran by outsiders, courtesy of EuGNosii with PR #4953.
- Closes #4951.
- New Config Option: global_town_settings.town_command_blacklisting.own_town_and_wilderness_limited_commands
- Default: sethome,home
- This allows the usage of blacklisted commands only in the player's town and the wilderness (essentially blocking commands from being ran by tourists/visitors.)
- Players with the towny.globally_welcome permission node are not going to be limited by this list.
- Commands have to be on town_command_blacklisting.town_blacklisted_commands, else this is not going to be checked.
- Include tb_prefix in column drop check, courtesy of Parsonswy with PR #4952 (First-Time Contributor!)
- For the mysql servers that could never get the old columns dropped, this will fix that, and prevent the massive error logs that resulted from it.
- Closes #4935.
- Bump language files to 0.106.
Towny SponsorsI want to give a big thank you to all of my sponsors: | |||
|---|---|---|---|
| MrLogano | Momshroom | Cobrex1 | KarlOfDuty |
| scatterspell | gerardvanschip | DrprofLuigi | Tobza |
| SmallSansSerif | TheNylox | diontimmer | trevor1097 |
| benevolent2012 | bretomart | HunSolos | 0xBit-MC |
| specs1396 | treeDerevo | Scottlander100 | ItsSynchro |
| Advanced-Kind-MC | MidnightSugar | 0liverGMC | Microhazard |
| mhiaxo | TheFlagCourier | PigioGigio | and 2 private sponsors. |
If you want to support the developer consider becoming a sponsor.(It's just like Patreon but 100% goes to the developer.) | |||
| Important Links | ||
|---|---|---|
| How Towny Works | Towny Install Guide | Towny Update Guide |
| Complete Changelog | Default Config Files | Commands/Permissions Placeholders |