0.98.3.12 for MC 1.16.* & 1.17.* & 1.18.* & 1.19.*
Pre-release
Pre-release
- Change to Config Option: notification.titles.nationcapital_format
- Default: "&6Entering %s, Capital City of %s"
- The format used to format the {nationcapital} option. The name of the capital city and nation will replace the %s and %s.
- Alternatively, you can use %t for townname and %n for nationname and show either one or both.
- New PAPI Placeholders:
- %townyadvanced_town_unformatted% - Shows the player's townname, if they have one.
- %townyadvanced_nation_unformatted% - Shows the player's nationname, if they have one.
- Closes #6197.
- Jail Overhaul courtesy of Kali (First-Time Contributor!) and LlmDL with PR #6031.
- Includes the ability for mayors to set bail amounts.
- Admins can limit the upper limit on bail costs.
- Includes the optional ability for admins to set a jail-upkeep.
- Towns can be made to pay an initial fee to jail someone.
- Towns can be made to pay hourly to house prisoners.
- Includes the ability to limit how many players can be jailed in one town.
- There is also a configurable system that decides when happens when a town has reached their jailed-residents limit.
- Includes the ability to give or not give the jail book received by newly jailed players.
- Includes the ability for mayors to set bail amounts.
- New Config Options:
- jail.pow_jail_hours
- Default: 5
- How many hours an attacking enemy will be jailed for.
- jail.maximum_jail_hours
- Default: 5
- The maximum hours that a mayor can set when jailing someone, full number expected.
- jail.fee_initial_amount
- Default: -1
- Amount that it costs per player jailed for a town, this is withdrawn from the Town bank. Set to -1 to disable.
- jail.fee_hourly_amount
- Default: -1
- Amount that it costs per player jailed per hour for a town, this is withdrawn from the Town bank. Set to -1 to disable.
- jail.bail.bailmax_amount
- Default: 100
- Max bail cost that a mayor can set.
- jail.max_jailed_count
- Default: -1
- Amount of potential jailed players per town, set to -1 to disable.
- jail.max_jailed_newjail_behavior
- Default: 0
- Behaviour for new jail attempts if max jailed count is reached.
- 0 = Unable to jail new players until a current prisoner is released.
- 1 = A prisoner slot will be made by automatically releasing a prisoner based on remaining time.
- 2 = A prisoner slot will be made by automatically releasing a prisoner based on lowest custom bail.
- jail.is_jailbook_enabled
- Default: true
- If false players will not be provided with a book upon being jailed.
- jail.pow_jail_hours
- Changed command: /t jail.
- If your server has bail allowed: jail.bail.is_allowing_bail, the jail command will now accept a bail amount:
- /t jail [playername] {hours} {bail} {jail} {cell}
- If bail is not allowed the old command is used: /t jail [playername] {hours} {jail} {cell}
Cumulative changes since 0.98.3.0
0.98.3.11
- Add tab completion for setting town and nation map colours.
- Closes #6188.
- New Config Option: filters_colour_chat.papi_relational_formatting.no_town
- Default: &f
- Given to players who have no town.
- Closes #6169.
- New entering-town-placeholders:
- When players see town/wilderness notifications for entering towns there are now new options:
- {nationname} - Name of the nation.
- {nationcapital} - Name of the nation capital and nation.
- {nation_motd} - Shows the nationboard message.
- {nation_residents} - Shows the number of residents in the nation.
- {nation_residents_online} - Shows the number of residents online currently.
- Closes #6159.
- When players see town/wilderness notifications for entering towns there are now new options:
- New Config Option: notification.titles.nationname_format
- Default: "&6Nation of %s"
- The format used to format the {nationame} option. The name of the nation will replace %s.
- New Config Option: notification.titles.nationcapital_format
- Default: "&6Entering %s, Capital City of %s"
- The format used to format the {nationcapital} option. The name of the capital city and nation will replace the %s and %s.
- New Config Option: economy.daily_taxes.allow_negative_plot_tax",
- Default: false
- If enabled, if a plot tax is set to a negative amount it will result in the resident that owns it being paid by the town bank (if the town can afford it.)
- Make it possible for plot taxes to be negative, as a way for mayors to pay residents for owning plots.
- Closes #6047.
- Adopt new Spigot Criteria Scoreboard API.
0.98.3.10
- API: Add TOWNYADMIN_TOWN and TOWNYADMIN_NATION CommandTypes, courtesy of Lemar98 with PR #6179. (First-Time Contributor!)
- Add option to use a timer for new day scheduling, courtesy of Warriorrrr with PR #6181.
- New Config Option: plugin.day_timer.uses_java_timer
- Default: false
- If enabled (disabled by default), a Java Timer will be used for scheduling new days, which is more accurate than Towny's Bukkit timer task but uses an extra thread.
- Catch exceptions from spawn point particle spawning, courtesy of Warriorrrr with PR #6180.
- Fix being able to set a townblock to the type it already is.
- Closes #6183.
- API: Add TownyAPI#getNation(Player), courtesy of Warriorrrr with PR #6190.
- Remove old sculk spread option, courtesy of Warriorrrr with PR #6189.
- Town board command improvements, courtesy of Warriorrrr with PR #6186.
- Replace ChatTools.stripColour with Colors.strip, courtesy of Warriorrrr with PR #6185.
- API: Add Confirmation related events, courtesy of Warriorrrr with PR #6182.
- ConfirmationEvent
- ConfirmationCancelEvent
- ConfirmationConfirmEvent
- ConfirmationSendEvent
- Includes the ability "hide" the confirmation for plugin authors to replace with their own selection/display.
- API: Add a ConfirmationTransaction to Confirmations.
- This enables cost-requirements to be baked-in to Confirmations.
- Costs are passed in as a
Supplier<Double>
so that calculations can be made after the player accepts.
0.98.3.9
- Fix angry wolves not being attackable while in Towns when wolves are a protected entity.
- Protect lily pads in towns from being destroyed by boats.
- Closes #6160.
- Use "town_sing" translation in TownCommand, courtesy of Warriorrrr with PR #6167.
- API: Add TownyAPI#getTown(Player), courtesy of Warriorrrr with PR #6166.
- Make TownyAPI#getOnlinePlayers(ResidentList) thread safe, courtesy of Warriorrrr with PR #6165.
- Improve command blocking, courtesy of Warriorrrr with PR #6163.
- Fix legacy hex code parsing not working, courtesy of Warriorrrr with PR #6176.
- Use translatable over direct translation in BaseCommand, courtesy of Warriorrrr with PR #6172.
- Simplify parameters used for TownCommand title & surname methods, courtesy of Warriorrrr with PR #6171.
0.98.3.8
0.98.3.7
- Alter CooldownTimerTask to accept strings alongside the pre-configured enum, allowing for third-party plugins to create simple cooldowns.
- Use FontUtil's minecraftfont constant for bookfactory, courtesy of Warriorrrr with PR #6133.
- Fix towny.command.plot.asmayorinunowned permission node not working for /plot nfs, due to area selection.
- New Config Option: new_world_settings.are_new_world_claimable
- Default: true
- Are new worlds claimable by default?
- Setting this to false means that Towny will still be active but no land can be claimed by towns.
- Stop removing title/surname when nation is deleted, courtesy of partydev with PR #6136.
- Prevent axolotls from targeting protected mobs, courtesy of Akiranya with PR #6140. (First-Time Contributor!)
- Add colors class changes from minimessage branch, courtesy of Warriorrrr with PR #6132.
- Replace Component.texts with alternatives in formatter, courtesy of Warriorrrr with PR #6134.
- Fix missing outlaws-cannot-spawn-to-towns feature that used to exist.
- Closes #6147.
- Fix /towny map big kicking players in rare cases, courtesy of Warriorrrr with PR #6151.
- Remove lang file versions, courtesy of Warriorrrr with PR #6146.
- Remove instances of legacy making it into components, courtesy of Warriorrrr with PR #6141.
- Replace ChatColor.stripColor uses with Colors.strip, courtesy of Warriorrrr with PR #6143.
- Add a catch to Account's constructor, courtesy of Warriorrrr with PR #6144.
- Adoption of MiniMessage throughout the remaining codespaces, courtesy of Warriorrrr with PR #6142!
- As of this moment, all messaging is using minimessage. All language strings can accept MiniMessage tags and,
- Hex is available everywhere in just about any tag style you can imagine.
- If you have previously been using hex gradients you might have to update your tags to the MiniMessage way of things.
0.98.3.6
- Make it possible to use Unicode symbols in the ASCII maps.
- Closes #6114.
- Make unconfigurable map symbols configurable.
- Closes #6113.
- New Config Options:
- ascii_map_symbols.home
- Default: "H"
- The character used for the home symbol.
- ascii_map_symbols.forsale
- Default: "$"
- The character used for plots which are forsale.
- ascii_map_symbols.wilderness
- Default: "-"
- The character used for plots which are unclaimed.
- ascii_map_symbols.home
- Fix many ArrayIndexOutOfBoundsExceptions in the /ta town NAME command.
- Progress towards #6120.
- Add status screen changes from minimessage branch, courtesy of Warriorrrr with PR #6090.
- API: Add NewResidentEvent, courtesy of PestoNotPasta with PR #6121.
- Big refactor on TownCommand, making use of newer methods and making the code more readable.
- API: Add WorldCoord#getCardinallyAdjacentWorldCoords
- Returns a List of WorldCoords directly N, E, S, W from the WorldCoord.
- Clean up edgeblock test in TownCommand.
- Add version numbering to the database.yml.
- Capitalize the returned value of the %townyadvanced_player_plot_type% placeholder.
- Prevent towns and nations being named with only underscores.
- Fix /ta town new NAME MAYOR not being able to be run from console.
- API: Add new outlaw add/remove events.
- TownOutlawAddEvent
- TownOutlawRemoveEvent
- Cancellable events that are thrown when a town is modifying who is outlawed.
0.98.3.5
- Add Translator#component, courtesy of Warriorrrr with PR #6088.
- Add component support for status screen events, courtesy of Warriorrrr with PR #6091.
- Allow removing metadata by key, courtesy of Warriorrrr with PR #6089.
- Simplify permission-checking code with NoPermissionException.
- Add WorldCoord#getChunks, courtesy of Warriorrrr with PR #6098.
- Fix max_distance_between_homeblocks config setting being triggered when there are no towns yet.
- Fix plot info command not being usable in wilderness, courtesy of Warriorrrr with PR #6104.
- Rename town explosion methods, courtesy of Warriorrrr with PR #6102.
- Add TownyComponents class, courtesy of Warriorrrr with PR #6105.
- Make the ASCII map fully use components, courtesy of Warriorrrr with PR #6103.
- Handle bold characters in titles using pixelwidth, courtesy of Warriorrrr with PR #6107.
- Allow /plot set name to be used on plots in groups, courtesy of Warriorrrr with PR #6108.
- Fix regression from 0.98.3.4 that resulted in some command output breaking due to #6078.
- Apply new font-measuring to BookFactory, fixing potential Invalid Book Tag books being made.
- Reflow TownyMessaging.
- Re-directs TownyMessaging from having many end points for messages, into the sendMessage(Sender, String) method.
- Plugins that want to cancel Towny events and prevent those events showing cancellation messages to the user should be able to do so.
0.98.3.4
- Fix vehicles not being killed by lava, courtesy of Warriorrrr with PR #6044.
- Make townyworld's trident strike list use uuid instead of eid, courtesy of Warriorrrr with PR #6043.
- Add baltop as banned name, courtesy of Warriorrrr with PR #6046.
- Fix messages from cancelled Nation ally adding and removal events not displaying to the command user.
- Closes #6049.
- Exclude transitive bukkit api dependency, courtesy of Warriorrrr with PR #6051.
- Replace town/nation levels with records, courtesy of Warriorrrr with PR #6041.
- Add upkeep comparator type, courtesy of Warriorrrr with PR #6042.
- Add perm check to invalid comp type message, courtesy of Warriorrrr with PR #6054.
- Fix using World#isRespawnAnchorWorks() which did not exist in 1.16.5 api.
- Closes #6056.
- Create our own wrapper impl, courtesy of Warriorrrr with PR #6075.
- Add option to disallow numbers in town/nation names, courtesy of Warriorrrr with PR #6068.
- Closes #5954.
- Allow spaces to be used in town/nation rename commands, courtesy of Warriorrrr with PR #6067.
- Make it easier to debug lang file formatting errors, courtesy of Warriorrrr with PR #6066.
- Closes #6036.
- Fix /t deposit & /n deposit running sync, courtesy of Warriorrrr with PR #6064.
- Include the plot price in the /plot fs feedback message, courtesy of Warriorrrr with PR #6062.
- Ensure player gets feedback message when setting a group for sale, courtesy of Warriorrrr with PR #6060.
- Re-check group set cost after confirmation is accepted, courtesy of Warriorrrr with PR #6058.
- Add admin town command upkeep toggle, courtesy of Gamer153 with PR #6052. (First-Time Contributor!)
- New Command: /ta town NAME toggle upkeep
- Toggles upkeep on or off for the given town.
- Add null check to teleport listener, courtesy of Warriorrrr with PR #6077.
- Closes #6072.
- Add all subcommand to /t and /n withdraw and deposit commands, courtesy of Warriorrrr with PR #6081.
- New Commands:
- /t withdraw all - remove all money from the town bank.
- /t deposit all - deposit all your money into the town bank.
- /n withdraw all - remove all money from the nation bank.
- /n deposit all - deposit all your money into the nation bank.
- Update platform bukkit to 4.1.2, courtesy of Warriorrrr with PR #6079.
- Update translatable with changes from MiniMessage PR, courtesy of Warriorrrr with PR #6078.
- Add configurable plot type limits, courtesy of Warriorrrr with PR #6038.
- Closes #5889.
- If you want to limit plot types amounts per-town based on their town_level you will fill out the new section in this fashion:
townBlockTypeLimits:
- shop: 2
- arena: 2
- Automatic Config Edit: your config's town_level sections will have an empty townBlockTypeLimits: added.
0.98.3.3
- Bump language files to 0.152.
- Fix jailcells being able to be placed where a jailcell already exists.
- Make the plot perm hud translatable.
- Fix potential NPE in SelectionGUI.
- Fix the back button on the switch/itemuse/allowedblocks GUIs not working from the first page.
- Closes #6027.
- Auto-supress event message if empty, courtesy of GNosii with PR #6028.
- Add a command to manually override a town's TownLevel.
- New Command: /ta town TOWNNAME settownlevel [#|unset]
- Manually overrides a town's townlevel to a number, 1 through x, where x is the last townlevel.
- unset subcommand removes the manual override and returns a town to using the normal townlevel based on resident count.
- Add some int and money validations to reduce duplication in commands.
- New Command: /ta town TOWNNAME giveboughtblocks [#|unset]
- Command that lets the admin modify the number of purchased townblocks a town has.
- unset subcommand removes all purchased townblocks from the town.
- Use negative numbers to take purchased townblocks from the town.
- Closes #6034.
- Condense action bar and bossbar notification options into one, courtesy of Warriorrrr with PR #6033.
- Add Runnable type to ConfigMigrator, courtesy of Warriorrrr with PR #6033.
- New Config Option: notification.notifications_appear_as
- Default: "action_bar"
- This setting controls where chunk notifications are displayed for players.
- By default, notifications appear in the player's action bar.
- Available options: action_bar, chat, bossbar, or none.
- Automatic Config Edit: previous notification setting will be migrated to the new home: notification.notifications_appear_as
- Add unclaimEntityTypeDelete to TownyWorld.
- Allows Towny to delete all Entities of a given type from a TownBlock when it is unclaimed by a town.
- Closes #5953.
- New Config Options:
- new_world_settings.plot_management.entity_delete.enabled
- Default: false
- new_world_settings.plot_management.entity_delete.unclaim_delete
- Default: "ENDER_CRYSTAL"
- These entities will be deleted upon a plot being unclaimed
- new_world_settings.plot_management.entity_delete.enabled
0.98.3.2
- Add Resident#getAccountOrNull, courtesy of Warriorrrr with PR #6006.
- Potentially fixing an issue when Accounts are being renamed.
- API: Add ChunkNotificationEvent
- Cancellable event that lets other plugins alter Towny's ChunkNotifications.
- Closes #6009.
- Add a small delay before we start the DrawSpawnPointsTask, because one server got a ConcurrentModificationException.
- New Placeholders:
- %townyadvanced_daily_town_per_plot_upkeep% - Shows the amount of upkeep paid per-plot by a Town.
- %townyadvanced_daily_town_overclaimed_per_plot_upkeep_penalty% - Shows the penalty paid per-plot by a Town.
- %townyadvanced_daily_town_upkeep_reduction_from_town_level% - Shows the percentage that a Town's upkeep is reduced by the TownLevel's upkeepModifier, or if the player has no Town what a 1 player town would receive.
- %townyadvanced_daily_town_upkeep_reduction_from_nation_level% - Shows the percentage that a Town's upkeep is reduced by the NationLevel's nationTownUpkeepModifier, or if the player has no Nation what a 1 player town would receive if they had a nation.
- %townyadvanced_daily_nation_per_town_upkeep% - Shows the amount of upkeep paid per-town by a Nation.
- %townyadvanced_daily_nation_upkeep_reduction_from_nation_level% - Shows the percentage that a Nation's upkeep is reduced by the NationLevel's upkeepModifier, or if the player has no Nation what a 1 player town would receive if they had a nation.
- %townyadvanced_town_merge_cost% - Shows the base cost to merge a town.
- %townyadvanced_town_merge_per_plot_percentage% - Shows the percentage of the TownBlock claim price that the merging Town will have to pay in order to do a merge.
- %townyadvanced_town_reclaim_cost% - Shows the cost to reclaim a town.
- %townyadvanced_town_reclaim_max_duration_hours% - Shows the maximum number of hours a town can be ruined before it is deleted.
- %townyadvanced_town_reclaim_min_duration_hours% - Shows the minimum number of hours a town can be ruined before it can be reclaimed.
- %townyadvanced_townblock_buy_bonus_price% - Shows the base price of buying a TownBlock using /t buy bonus.
- %townyadvanced_townblock_claim_price% - Shows the base price of claiming a TownBlocking using /t claim.
- %townyadvanced_townblock_unclaim_price% - Shows the base price of claiming a TownBlocking using /t unclaim.
- %townyadvanced_outpost_claim_price% - Shows the price of claiming an outpost using /t claim outpost.
- New Config Option: economy.bankruptcy.neutrality.can_bankrupt_towns_pay_for_neutrality
- Default: true
- If a town is bankrupt can they still pay for neutrality?
- Closes #6017.
- Fix admins being unable to teleport out of Towns in which they are outlawed.
- Adapt to PlaceholderAPI no longer parsing colours.
- Automatic Config Edit:
- ,OAK_CHEST_BOAT will be added to your protections.switch_ids list.
- This will make all chest boats require switching perms to open/enter.
- New configs will have OAK_CHEST_BOAT included in the switch_ids list.
- Remove old tc, nc tab completes from /res set mode.
- Fix WorldCoord#loadChunks and #unloadChunks from being called async.
- Closes #6022.
0.98.3.1
- Fix /t outpost generating a array index out of bounds.
Towny SponsorsI want to give a big thank you to all of my sponsors: | |||||
---|---|---|---|---|---|
MrLogano | Momshroom | Cobrex1 | KarlOfDuty | scatterspell | TheFlagCourier |
gerardvanschip | DrprofLuigi | Tobza | SmallSansSerif | TheNylox | trevor1097 |
benevolent2012 | Scottlander100 | bretomart | EnvyEnfys | JustinDevB | cigaming |
KeNickGong | MilesBHuff | pebblehost | BamBamTheEggman | NoikzGaming | Kali0033 |
TakeoRenka | Mille12313 | SkapMC | Jqnnies | Lemuridaee | ReEvadere |
qckcat | roflmarv | beabuenodev | LoJoSho | benjamin1313 | ThePontificate |
AllieDragon | TegulaThePig | KjellWolf | Caleston | Dynamite99 | TuckerAndrews3 |
darthpeti | Cboxhero | WillysHub | Agaloth | LaBoulangerie | Eblyss |
BurgBoi | akup001 | Intrabit71 | finder1793 | mattematti2 | gladmountain |
zekepari | havencraftmc | Bloc-k | SW1D3RSK1 | Peskdt | xSTORMYxSHM |
Dantexde | FauultySpell | RenoldHenold | AnachroSoft | 0xBitMC | LightNing002 |
Valerie2308 | ethsmith | Wextra | Downsurge | lukemango | ethanic17 |
Chibby9607 | RulaAshvure | Kelbbie | HerbDashwell | KaiserSergio | Ph4i1ur3 |
perzues69 | ConHNation | amaxtx | Duergur | UnitedLands | Tuteee |
TRLWeiss | illlliyas | tjdings | AldinaMapping | shiaki-66 | papaj3 |
CrypticBlades | dagobertdu94-YT | FilthyCasualOfficial | ThatNPC | EcoSMP | RFSMassacre |
Semisol | Theeno74 | NotOxymoronic | Darklom | CoconutFan123 | serialrain |
TheDelusioned | F1amire | CyricliIsRad | ItzXPurpleX | MrQuackios | Luciusred |
and 16 private sponsors. | |||||
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 Perks! |
Important Links | ||
---|---|---|
How Towny Works | Towny Install Guide | Towny Update Guide |
Complete Changelog | Default Config Files | Commands/Permissions Placeholders |