v0.10: Compass on towny map. Plots and /plot command. v0.12: Ability to unclaim areas. Daily and initial cost to nations to stay neutral. Changed the way admins permissions are dealt with. New nations actually cost now. New command /towny prices. Shows the prices for a new town, nation as well as your town's plot price and upkeep costs. It also shows similar aspects for your nation. Flatfile database backup on server start as well as during the daily scheduler. Rewrote Claim and Unclaim to use the same methods for selecting area. Switch permissions using BlockInteract. Switches may or not actually work and hooking this event may cause bugs. World names loaded from server take the last token after spliting with "/". Eg: Name=map with "worlds/map". HomeBlocks show up as H on towny map. Deposit for both town and nation banks. Any resident can deposit. Withdrawal/Deposits show a message to all online. World names that represent subfolders, eg: "worlds/normal" are use the last token when split with "/". So the example world would use "normal". Added permissions: towny.wild.switch towny.wild.build towny.wild.destroy onMoveChunkTransitions update. Added unowned plot name as well as a homeblock and for sale notifier. Added command /townyadmin backup to force a backup at any time. Fixed bugs. Some tax output during new day. Let the daily interval be customizable. Added command /town spawn [town] with settings and price. v0.13: Some debug stuff for war. Town PvP status is ignored during war time. Fixed town bonus plots not being added to maximum when using ratio. v0.14: Moved debug commands to townyadmin command. Made tree command not debug only. Fixed error updating cache with build and destroy in the wild. Registered onDeath listener (had that code for ages FML) Did some work on the towny tree output. Moved /towny commands to onCommand The /towny prices now can select individual towns with /towny prices [town]. Changed which events were called. Join -> Login. Death -> Respawn. Automatic town spawn on respawn. v0.15: Use github if you want the source. 700Kb -> 400Kb Base spoils of war provided by server. Deleting towns/nations will put any leftover money in the banks into the spoils of war for the next war. Winning nation receives half the spoils of war. Town with the highest score receives the other half. Builds on Essentials for Town Spawn teleports and teleport cost. v0.16: Price for death during war. If a resident can't pay, its provided by the town. If the town is broke, town is removed from war. Price for death for if not at war. Non player deaths will give the money to spoils of war pot. Price for losing a townblock during war. If town is broke, town is removed from war. War works, it has a fair amount of message spam that will be streamlined as soon as I know the mechanics work. v0.17: Mob removal Reload not actually reloading. v0.18: Fixed set perm using friend as an alias for resident. Town and nation banks get moved when renaming. Rewrote block permissions to cache the status of the current TownBlock (Wilderness, WarZone, etc). Ignore protection in wilderness for particular blocks. (unclaimed_zone_ignore) Automatically change config if an optional plugin isn't installed. Town assistants can now set plots for sale. During war. The death of a mayor or king will remove the town/nation from war. Defeating a townblock during war will give your town +1 bonus, and the enemy town -1 bonus. Resident perms load on boot now. Added command "/towny top" to show a few highscore lists. Added permission: towny.spawntp (To let a player use /town spawn [town] even when ALLOW_TOWN_SPAWN_TRAVEL=false) v0.19: Forgot to override with build and switch for wild ignore blocks. Moved all timers to Bukkits Scheduler. Bug fixes for war. v0.20: Quick fix for town notifications. v0.21: Resident permissions are persistent. Added add+/remove+ to select offline residents. v0.22: Nation server upkeep is now taken. Added command /townyworld (/tw) to manage worlds. You can now set world PvP, and if a world is claimable. The slightly spammy messages during war have been filtered to show every 10 damage. They can be viewed with the modes "wardef" and "waratk". Added modes "tc" and "nc" to talk in a particular chat without typing /tc [msg], etc. Created Long config values. "Deleted after time" was overflowing int. Added to world options, isDefault (use default settings in config), as well as per world permissions, ignore ids, and unclaimed zone names. Fixed MobRemoval. Moved some help commands around. v0.23: Updated Essentials extensibility to use the proper plugin. Added option to disable removing a town/nation on monarch death. Small grammar edit for when setting permissions. v0.24: Fixed the logic error with loading permissions. v0.25: Finished TownyWorld commands. v0.26: All damage within non PvP zones is negated. Update for latest API change. v0.27: Mayor's can no longer leave the town (must choose a replacement first). Changed a few config names DATABASE_LOAD, DATABASE_SAVE Flatfile backup is is now zipping the entire Towny folder. 3 options now in config flatfile_backup = [zip/folder/none]. v0.28: Ability to convert from hMod database. http://towny.xshade.ca/help/converting-from-hmod Possible fix for permission persistency bug. Logic error where town mayor and assistents where charged taxes. v0.29: New default aliases for commands seeing as how Essentials keeps stealing them all. The commands /r, /t, and /n are still there, however there are second to Essentials (IE: they will work when it's not installed). /resident = /player,/p,/res,/r /town = /t /nation = /nat,/n Towny, Plot and Townyadmin (/ta) remain the same. Changed command config keys from the suffix _COMMANDS to the prefix COMMANDS_ so as to group them all. v0.30: Changed towny.spawntp -> towny.publicspawntp, this permission has to do with teleporting to other towns. New permission towny.spawntp will be relative to your own town. Town has new property: /town set public [on/off]. This will toggle if you allow non-residents to use your warp, and also hides you Homeblock location from the town status. v0.31: Players are properly taxed when using /town spawn Added option to ignore all interactions with towny in certain worlds. /tw set usingtowny [on/off] v0.32: Added new permission Item Use. Used to prevent using items (like buckets and lighters). v0.33: Added points per kill during war. Introducing . . . Pet Zombie mode. An amusing bug from the last release, hoping to prevent damage within towns from other players (PvP) has also prevented PvE. So in the config, there is now an option for your very own pet zombie mode (no_pve_within_non_pvp_towns) v0.34 (Craftbukkit 424+ & Minecraft 1.3): Added support for GroupManager directly. v0.35: Fixed entity damage mess caused by the PvE option. Updated for iConomy 3.0 v0.36: Added new town/nation permissions along with config msgs for those without them (towny.town.new)(towny.nation.new). This is only in use when the "only let admin" option is turned on in the config. Town set public was actually editing the pvp setting. Changed towny version command to /towny v, as bukkit highjacks the "version" token. v0.37: Added permission towny.wild.block.[blockid]. Allows things like lumberjacks (towny.wild.block.17). Added the permission (towny.town.claim). Without this permission, people will not be able to expand their towns. MAKE SURE YOU ADD IT. v0.38: Fixed iConomy bug. v0.39: Check if your admin before town.claim check. Checks Permissions before GroupManager (as it's hecktic). v0.40: Using the command preprocessor. Updated for iConomy 4.0 Depositing/withdrawing prevent negatives. Temp removed GroupManager support. Prices in the config are now doubles (real numbers). (town/nation taxes are still integers for now). v0.41: Peasants can no longer turn the town into a nation. The player cache is reset after certain events. v0.42: Another vain attempt to fix iConomy and Permissions. v0.43: Fixed string formatting forgotten when changing all money handling to real numbers. v0.44: Uncommented out switch permissions left in from debugging. Added option to force PvP everywhere. v0.45: Moved the check for forcing pvp to after it makes sure the world is in use with towny. Possible efficiency boost with determining Town levels. Fixed error in first run town-levels.csv Fixed loading of levels configs. Stopped forcing respawn events to use world spawn if town spawn isn't found. Added option to skip town respawn. Changelog is displayed in console during an update. Added a ton of debug statements to the daily timer, as well as an option to turn it off. v0.46: There is now an option to set the minimum distance between another town's homeblocks (default is 0 ie no change). Fixed a concurrent modification bug with unclaiming all townblocks in a town. Mob removal now runs in the game thread (possible slow down, increase MOB_REMOVAL_SPEED variable in config if you find a new slowdown after updating). Added torches (id=50) to wild ignore ids default. Modified the onDamage call. v0.47: Changed the debug output for when permissions are checked against as it might be causing confusing. Quick fix for /tc and /nc with no msg. Ingame Resident/Town/Nation/Global messages are now sent to it's own log file. It's nature is to start a new log every time the plugin is enabled. Due to the nature of the backup system, it will now keep the log of what went on during that time period. Compiled against Permissions 2.5, to see if it makes any difference. Added maximum plots per resident globally (default=1000). Anyone trying to claim more than this will get an error. Added default permissions for when a new town/resident is registered. Mayor/Assistant can now edit plots within the town, even if the plot owner denies everything. Fixed outsiderSwitch permission. (Thanks PixelEater) wartime_death_price and death_price were renamed to price_death_wartime and price_death. Testing a /townyadmin unclaim command. Untested, use at your own risk. v0.48: Fix Essentials compatibility. v0.49: Towny now caches the last block location a player was at. v0.50: Fixed towny being a pimp and taking over every other plugins command. v0.51: Fixed some concurrent errors during taxation. v0.52: Switch perms were outputting incorrectly. Item use are now included in item ids usable in the wild. The permission, towny.wild.block.[item id] is now towny.wild.block.[item id].[action], where [action] is build, destroy, switch, item_use. So just add .* onto the end to function normally. No longer attempts to tax when using_iconomy=false. Added support for Questioner (A simple manager for asking questions). '/town add' will go through it to ask the player instead of immediately adding the player if installed. Possible bugfix? v0.53: Changed function name that is now used in Bukkit. v0.54: "_" is now skinned as spaces with formatted names. Fix for world data persistence. World names with / or spaces are now filtered to use _ instead. Set perms will clear the cache now. Added /ta town [town] ... to be used for admin use. /ta town [town] add is the only command for now. Option to not delete and start log from new when the server starts up. Plausible bug with resident plot permissions. Multiworld persistent. Default permissions for new towns etc now work as intended. Permissions is now treated as every other optional plugin. You can claim without being OP when Permissions isn't installed. Trying a new method for mob removal. Now canceling spawn events within towns instead of waiting for the removal. v0.55: Fixed reloading the towny config. Added regex check for all names. Names must be alphanumeric with the exception of underscores in place of spaces. Old names with invalid characters will be filtered appropriately. World names are now filtered like the other objects in the universe, worlds with / are no longer just using the last token. Reworded errors when making new towns. "You" was hardcoded, and didn't take into account admins making towns for others. To clarify, money is taken from the new mayor's bank account. Added new config option save_on_load. It's defaulted to off (which is opposite to what it was before). It will no longer to a giant save on startup which assured that what's in memory = saved in file. This should speed up startup of particular large db. Files are deleted when the object is deleted. It will not delete existing files, so files deleted outside of towny's regular actions will remain. Added allow_resident_plots to enable/disable plot commands, essentially freezing the plot system. Fixed admin add command (you couldnt add if you werent a mayor/assistant of any town). The admin set mayor command will now add the person to town if he/she isn't already. The npc part of this command now works as well. v0.56: Fixed default setting for regex. v0.57: Removed debug statements. v0.58: Fixed default regex settings. v0.59: onDestroy is now checked when a player starts breaking a block. v0.60: Using on onBlockBreak instead of onBlockDamage. v0.61: Now using correct way to calculate townblock cells. Any cells in the negative range will shift by 1. v0.62: Fixed towny map not drawing properly due to new bukkit font Fixed town spawn v0.69: Fixed iChat ###### Forked to new development ###### V0.71.1: - Updated to JRE 1.6 and CB 933 - Cleared all compile errors and type warnings - Added file tidy up for name changes of nation and towns. Should no longer leave old files behind when names are changed. - Fixed wild permissions bug. Walking into the wild, breaking a block and returning to town allowed you to then break blocks in town (fix from SwearWord). - Towny now moves deleted data files for Towns, Nations and worlds to a deleted folder. - Moved config.properties into config.yml - seperated all language strings to to their own YAML file. Specify which language file to use in config.yml. - Added auto creation of YAML files, if they don't exist. - Reworked all Towny commands to properly implement the bukkit command process. - Added a console 'townyadmin reload' command. - Re-enabled '/town set name xxxx'. Now that the saving/loading code has been reworked it should not be a problem any more. v0.71.2: - Fixed '/res set perm friend on/off' - Depreciated the rect subset of town claim and changed '/town claim' to support new methods of radius. Also supported through townyadmin and unclaim. Eg. '/town claim', '/town claim 5' or '/town claim auto' - Added a 'not for sale' confirmation message when performing '/plot notforsale'. Also added a permitted abreviation of 'nfs' for 'notforsale'. - Town mayors now get asked if they want to accept a nation invite. - Fixed error on setting a nation assistant. - Removed double message spam on removing a nation assist. - Added leaving messages for towns leaving nations. - Nation [enemy/ally] add/remove now work. - The command '/townyworld set wildperms' accepts a list of permissions to set 'build destroy switch itemuse', or leave blank to set to world defaults. - Changed the towny tree command to a console only command. Also removed it for townyadmin (shouldn;t be there). - fixed '/resident friend clearlist' to no longer give a null exception error. v0.71.3: - Fixed a bug in questioner which caused players with capital letters in their names to be unable to accept/deny questions. - Added explosion protection for towns. Use is '/town set explosion [on/off]'. On = explosions will damage, off = no damage. - added a golbal message when a nation is deleted due to no towns being members. - Fixed nation join/leave messages being sent correctly. - NPC mayors now work. '/townyadmin set mayor npc', will set the mayor to an NPC. When you set it back to a player all resident files are tidied up. - Resident permissions now show up correctly as 'rao' instead of 'fao'. - Fixed placing water/lava/lighter use targeting through another player (cheat). - Fixed the map to update correctly with Bukkit 949+ - Resized the map to fit the key back on the right. - Fixed '/towny prices command'. I guess I broke it in the last dev version. - Fixed '/towny war' and it's sub sets to give the proper responses. - Added a confirmation message when setting a player mode '/res set mode map'. - /resident set mode reset' now has a new alias of '/resident set mode clear'. (old commands are still accepted) - '/resident friends clearlist' now has a new alias of '/resident friends clear'. (old commands are still accepted) - Added messages for costs when using ./town spawn'. - The 'New Day' message no longer mentions taxes if you are not set to take taxes. v0.71.4: - Fixed towny admin commands to only work for admins or from the console. - Setting ally and outsider permissions at the resident level now correctly displays friend instead of resident. - Fixed an error when removing assistants from both town and nation. - Fixed Nation ally permissions to correctly test if you have perms for the area you want to perform the action in. - Added Bonemeal, redstone repeaters, noteblock and jukebox to protected items to prevent outsider griefing. - Moved chat prefix [Towny] to the language file (english.yml). - All chat colouring is now configurable within the language file. - disabled /tw wildperm, usedefault and wildignore if using permissions. Add permission nodes for these. - Added a fix to prevent players firing from the wild into a PVP disabled town to attack. - Added '/town set fire [on/off]' to prevent fire damage/spread in a town. - Fixed an error where a town/nation data file may not be moved if a previous town/nation of the same name had been deleted/renamed prior. V0.71.4 RC2: - Added to Wildzone ignore ID's - Wood, flowers, tall grass, leaves, cacti, pumpkins, sugarcane, mushrooms, saplings. - Added code to reset world wildzone ignore ID's to default at first run. - Fixed typo on Firespread message in language file. - Added 'wartime_nation_can_be_neutral' to the config. This setting permits you to disable the ability for a nation to remain neutral during a war. Toggle in game with '/townyadmin war neutral [on/off] - Added fs as an abreviation for forsale when used in '/plot forsale'. - Corrected an error when a nation sets neutral status. No message was sent of the cost. - Added global messages of what nations are at war. - Added better sanity checking on the global neutral settings. - Towny should no longer erase resident/town data on exit if there was a loading problem. - Moved last of the CSV files to the yml, and depreciated config settings for save_onload and first_run. - Fixed Nation prefix and suffix to read from the new config.yml entries - Depreciated all default prefix/poxfix entries. Now uses the new townLevel and nationLevel entries in config.yml - Added new settings for disabling world monster spawns and town control over mob spawns within their walls. - Changes to /townyadmin commands for war, neutral, townmobs, worldmobs, devmode and debug. Now use /townyadmin toggle XXX. v0.72.1: - Fix an error on new installs where towny would not auto create the data/worlds/XXX.txt files. v0.73.0: - Fixed a few typos in the language file. - Changed loading system to now reload ALL Towny data on the '/townyadmin reload' command. - Fixed an error of Nation/Towns/Residents data files not being correctly updated on a change. Fixes the error when using Inactive resident deletion. - '/town toggle public' now works as intended. - Fixed reading of town and nation level data from the yml. It actually reads it now. - Fixed an error with '/towny unclaim all' causing an error and corrupting a town save file. - Fixed '/town claim' when you have previously unclaimed all it wouldn't allow you to claim with an error of not attached to town message. - Prevented setting negative plot costs and taxes. - Added a town/nation upkeep modifier to the townLevel and nationLevel settings. You can now adjust the cost for upkeep based upon the level of the town/nation eg. (price_town_upkeep * modifier). - Fixed Health regen in towns to correctly display in the Admin panel. - Fixed the connection to Essentials for using teleport timers. - Fixed an error where a player leaving town could sometimes not correctly update the old town data file. - Fixed a typo causing Nation levels to not load. - Fixed players having to relog after leaving a town before they could join another. - Added chests and furnaces to the switch_id's (now protected by permission flags). - changed the default setting for town mob removal to 'true'. - Added a new setting of 'cheat_protection' to prevent fly and double jump cheats. - Removed default_max_town_blocks from the config as it's no longer used. All block settings are now in the townLevel and town_block_ratio entries. - Added config.yml settings for force_explosions_on, force_monsters_on and force_fire_on. These will prevent Mayors toggling the settings. - Added world configs for Forced Fire,Explosions and Monsters. - Moved some townyworld commands the a new toggle command '/townyworld toggle claimable, usingtowny, pvp, explosion, fire and mobs. - Changes to protect towns not in nations from explosions during a war. - Added regex parsing on town and nation renaming. - Removed access to '/town set mayor' command for assistants. - Fixed '/res set mode townclaim' attempting to claim the wrong blocks. - Added a town hasUpkeep setting for towns. Default sets to false if using an NPC mayor, or manually configurable by server admins. - Added a 'Mob Spawns' indicator to the '/town' status display. - Cleaned up display for /town /ta and /tw. - '/town set homeblock' no longer gets confused by your own homeblock when calculating the distance to the closest homeblock. - Moved many config settings to the seperate world data files for individual adjustment. (PvP, town Mob spawns, town Firespread and town Explosions are now configurable per world.) - Added '/townyworld toggle' controls for all new world settings. - Removed pve_in_non_pvp_towns from config.yml as it's no longer needed. - fixed an error in loading which prevented mob removal entities from being updated upon a reload. v0.73.1: - Fixed more typo's (a never ending job). - Added a debug message on startup to help descover incorrect town/world file configs. - Fixed '/town toggle pvp' to correctly watch the forced world pvp, not the pvp setting. - Fixed resident file being deleted when deleting a town. Should only be deleted if through the inactive player timer or is an NPC. - Fixed a permissions test error on spawn travel. It was failing to abort a teleport to spawn if you didn't have the correct permissions. - setting devmode and debug are now temporary settings for the current session only. They will not cause a save of config.yml. - Fixed teleport cooldown (essentials hook) to NOT teleport when in cooldown mode. - New '/town toggle taxpercent'. Allows a town to set it's taxes as a percentage of a players wealth rather than a fixed fee. - New '/town set taxes $$' to configure the tax rate (fixed or percentage) for a town. - Added error trapping to the language file and config file reads. This will prevent data corruption when users fail to follow the correct upgrade procedure. - Added support for Bukkitpermissions (superperms) v0.73.2: - Minor fix for spawn travel when not using essentials. - Fix for NPC's being deleted at a new day - Fixed teleporting when NOT using essentials for non admins. - Fixed admins teleport. Admins should override teleport settings to be able to teleport to any town by name. - Added a new permissions node - towny.town.resident - required to be able to join a town. - Fixed a typo causing all mob spawns in towns to be prevented, no matter the town/world setting. - plot price is now configurable at the plot level as well as town. '/plot forsale 100' puts that plot up for 100. If no price is specified it will use the towns plotprice. - Added permissions prefix and suffix node support. It now applies them to chat (group prefix, User Prefix, Towny prefix, playername, Towny suffix, Group Suffix, User Suffix). - Added saving of the Pitch and Yaw of town spawns. - Added a new permission node 'towny.cheat.bypass'. Disables the anti cheat code for those players with the node. - If the capital of a nation is removed due to failure to pay upkeep the town with the highest resident count in that nation will become the Capital. - Added ability to update Towny.jar (replacing config.yml and english yml) with the server running. - Added a new permisison node 'towny.top' to restrict access to the towny top commands. - Fixed the welcome message so it correctly uses the player name. v0.74.0: - Config and english yml's are now written as UTF-8 encoded to allow for easy editing with foreign characters. - Added a depends entry to the config.yml to prevent Towny loading before Multiverse and corrupting worlds.txt - Added a white suffix to town and nation chat to fix a compatability issue with herochat. - Added getTownName and isWilderness functions to the Towny API (inherit com.palmergames.bukkit.towny.TownyUniverse) - If a mayor is deleted due to inactivity a new mayor is chosen from the assistants. If there are no assistants a random resident will be promoted. - Removed 'allow_resident_plots' and replaced with a permission node 'towny.town.plot'. This node is required to have access to the plot commands. - Blocked creating towns named 'spawn' and renaming towns to 'spawn'. Breaks many other functions if towns are named 'spawn'. - Added '/townyadmin nation [nation] add [town]' so admins can force add towns to nations. - Fixed '/townyadmin unclaim'. - Setup name prefix/suffix at login so names display correctly in other list plugins. - Added separate charges for own town spawn travel and public spawn travel (set in config.yml). - Players in Enemy nations can no longer use spawn travel to opposing public towns. - town claim now tells you if the area is already claimed instead of just the cryptic 'not attached to edge' message. - Enabled '/townyadmin backup' use from the console. - Added two new config entries for King and Mayor chat colours (colour_king & colour_mayor). - Added a max_distance_between_homeblocks setting allowing server operators to control how spaced out towns are created. - Added the ability to disable player and creature trampling of crops (per world). - Towns now remember their respective states for fire, explosions, mob spawns and PVP when the World flags are toggled. - Towny will now attempt to repair corrupted world files. - Nations who change to a neutral state during a war are now correctly removed from the war. - Towny now logs all player issued commands to the server.log - Added better control over name/chat modifying - modify_chat: '{permprefix}{townynameprefix}{playername}{townynamepostfix}{permsuffix}' - Added custom titles. Kings can assign titles to their vassals with '/nation set title [resident] title'. The title will be used in place of the townynameprefix. - Added custom surnames. Kings can assign surnames to their vassals with '/nation set surname [resident] text'. The title will be used in place of the townynamepostfix. - Fixed an error caused by deleted residents not being cleaned up from other resident friend lists. - Nations enemy/Ally lists are now updated when another nation is deleted or renamed. - Paintings are now protected along with all other blocks. - townLevels and nationLevels are now full YAML nodes for easy editing (commit by dumptruckman). - Pistons can now only operate between similarly owned townblocks or wild areas (No piston griefing). - You can now block the use of '/town spawn' if you are in certain zones (unclaimed 'wilderness', Neutral towns and Enemy towns). v0.75.0: - Added sanity checking to prevent colour codes in titles and surnames, and a notification message when a title/surname is cleared. - Removed console spam from 'send message'. - Disabled the use of '/town new' and '/town claim' in worlds where Towny is disabled. - Added 'disable_modify_chat' for those not wanting Towny to make any changes. - Fixed an error if a player uses '/town spawn' after logging in, but before moving. This caused the player cache to be empty. - All console messages should now have their colour codes removed correctly. - New config.yml handling code means no need to delete config at each upgrade. (thanks dumptruckman) - Fixed town spawn being lost at load when using non standard (16x16) plot sizes. - Allow the ignition of obsidian for lighting portals, even when fire spread is disabled in a town. - Durations specified in the config are now in seconds rather than milliseconds. - Implemented Towny's own teleport_warmup_time for town spawns. - Added a command '/townyadmin reset'. Wipes all settings and generate/load a default config.yml. - Title and Surnames can now be limited in length by the setting 'max_title_length' in config.yml. - Towny is now an observable object. This allows other plugins to observe events that happen in Towny. - Towny now abbreviates it's residents lists when displayed, for easier reading. - Better formatting for times in the config eg. 1d6h20s. - Fixed a bug when using Max distance between towns on a fresh install not allowing the first town to be founded. - Fixed a bug when using essentials teleport warmup where admins would be teleported twice. - Fixed a bug where players with no town we're not able to use public town spawns. - Fixed a bug where plot claim was not taking money from a player. - Added new plot types and commands to support. '/plot set reset/shop' - Sets a plot as a Shop plot or resets to a normal plot. '/town set shopprice $$' - Set the towns default price on shop plots. '/town set shoptax $$' - Set the town tax rate on shop plots. (a shop plot is charged an extra tax on top of any plot taxes.) - Added /towny map big, which fills the entire chatbox (after pressing t) with the map. - Expanded commands: '/plot [claim/unclaim/nfs] [circle/rect] [radius]' '/plot fs within [circle/rect] [radius]' '/plot fs [$] within [circle/rect] [radius]' - Commands still accepted '/plot claim [radius]' '/plot fs' '/plot fs [$]' - Paintings can no longer be placed in the wilderness if the player doesn't have the correct permissions. - All /townyworld commands are now accessable via the console. Append a suffix of the world name to any command other than '?' and 'list'. eg. '/tw toggle fire world_nether'. - Added new Tags for Towns and Nations. If these are set they will be used instead of the full names in chat. '/town set tag [upto 4 characters]' '/nation set tag [upto 4 characters] - Fixed nations losing Enemies and Allies during a reload. - It is now possible to use '/town spawn' when in boats and minecarts. You will leave the vehicle where it is when you teleport. v0.75.1: - Fixed config reading so it works! v0.75.2: - Fixed deleting foreign language files at startup. - Added missing entry from english.yml - msg_err_empty_area_selection: '&cSelected area contains no valid plots.' - Fixed error on using '/town claim auto'. - Fixed a refactoring error which affected towny top commands. v0.76.0: - Added Town Buy command. Is defaulted to be empty. Currently only has ability to buy bonus blocks up until a set limit. '/town buy' '/town buy bonus [n]' - [Bonus: 0] is now hidden from the status when the town has no bonus blocks. - Added: [Bought: 0/max] to /town. - Fixed the shutdown of the Teleport warmup timer on restarts. - Fixed enabling Devmode, debug and reading integers from the config. - Added town bank caps and a toggle to enable/disable withdrawls from town banks (prevent players hiding money in towns on PVP worlds) - thanks phrstbrn - New command '/townyadmin toggle withdraw'. - Added two new commands to see who's online '/town online' '/nation online' - Fix for deleted residents in friend lists causing errors upon deletion, and the same error with nation deletion and enemy/ally lists. - Prevent sticky pistons pulling blocks across plot boundaries (if different owners). - Fix for getLastLocation() needing to throw a NullPointerException. The players location is now set upon creation of the cache. - Added a Maxplots permissions node. If a group doesn't have this node or the node is set to -1 Towny will default back to the max_plots_per_resident in config. Setting max_plots_per_resident to -1 with no permission node, or a node set to -1 will allow infinite plots. Eg usage: groups: Default: default: true permissions: - general.spawn inheritance: [] info: prefix: '' build: true suffix: '' towny_maxplots: 1 Admins: default: false permissions: - '*' inheritance: info: prefix: '' build: true suffix: '' towny_maxplots: -1 - Fixed old resident deletion for the new config system using seconds instead of milliseconds. - Towny now correctly defaults to Bukkits Permissions if using_permissions is set to false in the config. - Added XcraftGate to the plugin.yml as a recognised multiworld plugin. - Added a new unclaim_delete under Plot management in global_town_settings. This will delete any items listed when a town unclaims a plot or a town is deleted. v0.76.1.0: - Fixed error with '/town buy' granting the wrong number of blocks. - Fixed converting seconds to milliseconds for mobremoval and new day timers. - Fixed an error when using '/town claim #'. - Fixed an error with '/town claim auto' (I broke it fixing the above command). - Explosions in the nether caused by using beds are now blocked if a town is there and set to block explosions. However, the fires it generates can not be blocked. - Added (Online) to title Resident Status - Added Neutral in Nation status. - Moved /nation set neutral [on/off] to /nation toggle neutral - Added plot regeneration. When a town plot is unclaimed (by a player or through upkeep) it will slowly begin to revert to a pre town state. Blocks will slowly change back to whatever blocks we're present at the moment the town block was claimed. You can configure certain block types you don't want restored to prevent players exploiting regen for diamond ores. Block types to not restore are configured in block_ignore in the worlds txt file data/worlds/worldname.txt - Added a block deletion function to remove specified blocks when a town block becomes unclaimed. This is useful for removing Lockette/Deadbolt signs on doors and chests. Block types to remove are configured in unclaim_delete in the worlds txt file data/worlds/worldname.txt - Removed the commands '/town add+' and '/town kick+'. Use '/town add' and '/town kick'. - Removed + commands from '/town assistant [.add/remove]'. - Fixed when players are added to the default town they are unable to use '/town leave'. - Town data files should now be correctly deleted (moved to the deleted folder) upon removal. - Added a max_tax_amount and max_tax_percent to the config for towns. Defaults to 1000 and 25% respetively. Which one is used depends on how the town is taxing; flat rate or by percentage. - Fixed Town and Nation tags size limit. - Titles and surnames can now contain spaces. - Fixed default Bukkit Permissions to deny instead of allow. - Fixed last timer for deleting old residents. - Added a new setting 'regen_delay'. This setting is in seconds. It will allow players to break protected blocks in the wild and towns, even if they dont have permission. The blocks will drop no loot and will regenerate after the specified time. Defaults to 0 (disabled). - Added Nation bank caps and moved the settings to the economy section. - Moved daily tax settings to the economy section of the config. - Tidy of economy settings (WARNING - be sure to check the values after upgrading). - Added a broadcast if a Nation is disbanded due to a town deletion. - Fixed '/xxx claim auto' commands for town and resident. - Fixed '/plot unclaim xx' command. Now errors if it's an invalid entry. - Minor alterations to english.yml - No more sneak jump to avoid the cheat protection. - Fixed resetting tags using '/town set tag '. - Plot regen should now correctly restore different types of leaves/wood etc. - Added a new Default new world setting (wild_revert_on_mob_explosion). When enabled this will replace blocks destroyed by creature explosions in the wild. - Fixed a 'TickNextTick list out of synch' error on a new day. - Fixed overwriting custom language files (no, really this time). - Towny will now clean up it's backup folder. Default time to keep backups is 90 days (configurable in config). - Fixed default switch and item use permissions for ally and outsider. - Finally fixed the elusive error when getLastLocation() throws a NullPointerException. - Fixed an infinite loop when a player uses a fly hack over void. - Added support for Register 2.0 (Register.jar) - Supports iConomy5, iConomy6, EssentialsEco, BOSEconomy. (https://github.com/iConomy/Register/tree/master/dist) - Towny will no longer cause an exception if users attempt to use iConomy 6 instead of 5.01 natively. - Added some new permission nodes. - towny.town.delete : player can delete their town - towny.town.rename : player can rename their town - towny.town.toggle.* : User has access to all town toggle commands (if a mayor or assistant). - towny.town.toggle.pvp : If a mayor or assistant, the user is able to toggle pvp on/off in their town. - towny.town.toggle.public : If a mayor or assistant.... - towny.town.toggle.explosions : If a mayor or assistant.... - towny.town.toggle.fire : If a mayor or assistant.... - towny.town.toggle.mobs : If a mayor or assistant.... - towny.nation.delete : player can delete their nation - towny.nation.rename : player can rename their nation - towny.nation.grant-titles : King can set nation members titles and surnames '/nation set [title/surname]'. - towny.nation.* : Grants all Nation permission nodes. - Added 'towny time' : Displays the time until a new day is scheduled. - Players can no longer attack another players tamed wolf if in a non PVP area (can attack own). - Added new API functions TownyUniverse.getTownBlock(location) TownyUniverse.getCachePermission(player,location,action) - Towny will now check the Craftbukkit version and disable itself if it's too old. v0.76.1.1: - Fixed economy errors when using register and iCo6. - Fixed an error caused by players setting a town or nation bank cap as a double (now accepts 0.0). v0.76.1.2: - Added sanity checking on values pulled from the config.yml. - Updated a few nation commands to report the command format insted of throwing errors. v0.76.1.3: - Tidied Startup log data - Fixed Wild permissions. v0.76.1.4: - Refactored '/town spawn' with new config options for when the target town is part of your nation, or an allied nation. Each can have their own cost and has their own permission. - Town spawn permissions have been changed to: - towny.town.spawn.* : Grants all Spawn travel nodes - towny.town.spawn.town : Ability to spawn to your own town. - towny.town.spawn.nation : Ability to spawn to other towns in your nation. - towny.town.spawn.ally : Ability to spawn to towns in nations allied with yours. - towny.town.spawn.public : Ability to spawn to unaffilated public towns. v0.76.1.5: - Added missing permission nodes to support... - towny.wild.* v0.76.1.6: - Fixed a bug preventing players placing fences if they are admins. v0.76.1.7: - Adjusted wilderness permissions Towny will first check for permisison nodes. If no permissions are found the wild_ignore list is checked. If none of the above give permissions the worlds Wilderness zone settings are checked. - Enabled use of the following commands for admins while still using permissions. '/townyworld set usedefault' '/townyworld set wildperm' '/townyworld set wildperm [build,destroy,switch,ItemUse]' '/townyworld set wildignore xx,xx,xx' '/townyworld set wildname Wildy' - Added a fix for tags in data files crashing towny on load. v0.76.1.8: - Fixed town spawns to correctly follow config and permissions settings. v0.76.1.9: - Fixed NullPointerException generated by onPlayerInteractEvent. - Fixed message when setting Town tags to not say nation. - Fixed '/nation deposit' error message. - Added handling of World initialization to fix a bug when creating new worlds with Multiverse. v0.76.1.10: - Permit residents not in town to use public spawns again. - Corrected permissions node checking to match those in the config for spawn travel. v0.76.1.11: - Removed a lot of debug spam from permission checking. v0.76.1.12: - Fix for a possible error on shutdown with active warzones. - Fix so players can only attack other towns IF the correct number of players are online on BOTH sides. - If your town/nation is attacked with warflags the attackers will automatically be set as enemies (allows you to attack back). - Fixed renaming a town when it's also a capitol failing to update the nation. - Removed dependency on Bukkit to report the world list at startup (it's not always complete). v0.76.1.13: - Fixed a startup error on fresh installs. v0.76.1.14: - Towns which have unclaimed their HomeBlock (or all TownBlocks) no longer corrupt the data files on a shutdown. - Towns are now able to move worlds by moving their homeblock to that world. - Fixed Account creation for towns and nations when using BOSEconomy. - Towny now uses the correct currency type (coins/dollars) as defined in your Eco plugin. v0.76.1.15: - Added '/town set tag clear' and '/nation set tag clear' to reset tags. - Titles and surnames are now reset if the player is not in a nation. v0.76.1.16: - Added '/plot clear' for mayors. If a plot is owned by the town (not a resident) the mayor can stand in the plot and type this command to remove all block types as specified in mayor_plotblock_delete. This setting is per world so transfers to the world data files at startup. v0.76.1.17: - Added upkeep charging based upon the number of town plots (town_plotbased_upkeep) - thanks to phex - Slight reorgnise of TownyUniverse (if you hook towny be sure your functions have not moved). - Changed the daily timer to a set time each day. Configure new_day_time to set when you want taxes to be collected. eg. 15h30m would attempt to collect taxes at 3:30pm. v0.76.1.18: - Returned the setting day_interval so you can configure the length of a day. If you set a day length of 12 hours (12h), taxes will be collected on a 12 hourly cycle, instead of a 24 hour one. new_day_time should be set to less than the day_interval, but it will default to the same, if it's incorrectly set. v0.76.1.19: - Fixed an error in fetching the resident on new cache creation (caused by code reorganising). v0.76.2.0: - Release v0.76.2.1: - Fixed an error when not using a currency type with Essentials Eco. v0.76.2.2: - Force load the destination chunk when teleporting. Attempt to prevent the falling through the world bug. - If wild_revert_on_mob_explosion is enabled, the explosions no longer drop any blocks. - Simplfied Plugin interfacing for Economy plugins to a single setting of using_economy. Towny will first attempt to use Register.jar. If it's not present it will fall back to the legacy support for iConomy 5.01. v0.76.2.3: - Added a Permission handler to towny so it will now support GroupManager, PEX, bPermissions, Permissions 2/3 + (bridges) and Bukkit Perms. - Admins can now pick, choose and modify which notifications are shown when a player walks from plot to plot. Check the new section 'Town Notifications' in the config. - Town notifications now show a money formatted price. v0.76.2.4: - Fixed '/town new' and '/nation new' to properly follow the settings in config if permissions are disabled. - If not using Eco, Towny will no longer error when deleting/renaming towns/nations, or upon a new day. v0.76.2.5: - When using SuperPerms you can now use the following nodes with towny. prefix.prefixhere suffix.suffixhere towny_maxplots.x (with x being a number eg towny_maxplots.2) - Town spawn cost now outputs correctly formatted by the settings in your economy plugin. v0.76.2.6: - Fixed modplayername in chat format generating duplicate entries. - Optimized Towny chat so it no longer performs lots of wasteful string parsing on every message. v0.76.2.7: - Added a seperate thread for Town Claim to relieve the lag caused by Chunk snapshot generation. - Towny World commands are now admin only again. v0.76.2.8: - Fixed a world bug where Plot revert was following wild revent instead of it's own setting. - Requires CraftBukkit 1302 as a minimum, to clear memory leaks. - Added access from console for '/ta givebonus', and expanded to allow a town or a player to give the bonus to. (bonus given to the player is directly transfered to the town) v0.76.2.9: - Towny now zero's economy accounts upon removal of resident/town/nation, to allow the account deletion. - Pistons can now push between town owned townblocks. - Fixed town spawn when not using any permissiosn plugins. v0.76.2.10: - Update for Bukkit 1317's new YamlConfiguration. v0.76.3.0: - Release. v0.76.3.1: - Fixed overwriting of config.yml. v0.76.3.2: - Code change due to PEX changing .has() to static (PEX 1.15). - Animals in towns can now only be killed by residents of that town. Unless PVP is enabled. v0.76.3.3: - TownBlocks reposessed by the Mayor/Assistants now correctly remove the block from the Residents data files. - Added Plot level permissions and commands to control them. '/plot perm' displays the current plots permissions. '/plot set perm [on/off] or [resident/friend/ally/outsider] [build/destroy/switch/itemuse] [on/off]' - Added 23 and 107 to Switch Id's (Dispenser and Fence Gate). - Changed saving of engligh.yml to ansi until bukkit fix their utf-8 support. V0.76.3.4: - Added 57 (diamond block), 22 (lazuli block), 41 (gold block), 42 (iron block) to plot_management.revert_on_unclaim.block_ignore. - Removed redundant code in '/ta unclaim' for clearing a resident data. It's already handled in TownyUniverse. - Fixed TownClaim/unclaim thread not correctly selecting the town when the command was issued by an admin. - Towny will now kick players who use hacked clients and join with no name, rather than crash. - Moved all Towny messaging to it's own class. Depreciated old methods in TownyUniverse. - All '/ta' commands are now accessable ingame and at the console, excluding '/ta town/nation name add' for console. - Fixed an error with the new bukkit config failing to set a value (debug/devmode etc) - Temporary fix for prefixes not being updated in Towny when a player changes permissions groups etc. v0.76.3.5: - Revert the PEX change as they reverted their change of .has() for release. v0.76.3.6: - Added Embassy plots. These may be leased by anyone, so long as they belong to a town (they don't have to be a member of the plot owning town). - New commands:- '/plot set embassy' '/town set embassyprice $' - Sets the default price for Embassy plots (can be overridden by '/plot fs $') '/town set embassytax $' - This is charged on top of the towns normal plot tax. - Changed response when setting resident/plot/town perms to be more readable. v0.76.3.7: - Fixed '/town claim' which I broke when fixing admin unclaim. v0.76.3.8: - When claiming/unclaiming groups of TownBlocks the message will no longer spam up your screen with the plot list. - Embassy plots now show up on the map as 'E'. - Threaded plot claim/unclaim to eliminate lag on LARGE claims. - plot claiming now supports the all suffix (/plot unclaim all).' - Capped claiming by radius to 1000 TownBlocks. v0.76.3.9: - Reduced default plots per resident to 8, instead of 16 (town_block_ratio). - Added settings for Questioner accept/deny so server admins can change the default commands to accept or deny invites. - Added Arena plots. These plots default to PVP enabled, and can not have PVP disabled. - Added plot toggle commands... '/plot toggle pvp' '/plot toggle fire' '/plot toggle explosion' '/plot toggle mobs' v0.76.3.10: - Arena plots now ignore Friendly fire settings. - Town Health Regen is now disabled in Arean plots. v0.76.3.11: - Added protection from Enderman griefing (if town mobs are off). - Added unclaimed_zone_enderman_protect to prevent endermen moving blocks in the wild. - Entity Attack Permissions: Always allow attacks in Warzones and enemy towns, regardless of town or world PvP settings. - Warzones now have their own block permissions (block/switch/item use/fire/explosion). Explosions can also be configured to allow damage, but prevent block breaks. - Warzones will now no longer follow world or town pvp settings (they are always PvP). - Changed EcoObject function pay(n, collector) -> payTo - Added reason argument for all eco functions. Will be put in money log along with transaction details. - logs folder is now placed in backups. - Debug now has it's own log file when it's turned on. - Towny/logs/money.csv is in the format 'timestamp,reason,obj,amount,collector'. In the case that there is no collector or obj, [Server] is entered. towny-war-spoils is shown as '[Server] towny-war-spoils'. - Town and Nation economy accounts are now restricted to 32 characters in length. v0.76.3.12: - Possible fix for Essentials teleport refusing to engage and towny defaulting to it's own timer. - Moved all chat handling to a seperate jar (TownyChat.jar). TownyChat is a Fully functional chat manager. If it's enabled it will handle all chat and supports custom chat channels. This new system supports total customization of chat. It supports custom chat channels, with access control via permission nodes. Current channels are:- /tc (town chat) permission node: towny.chat.town /nc (nation chat) permission node: towny.chat.nation /a (admin chat) permission node: towny.chat.admin /m (moderators chat) permission node: towny.chat.mod TownyChat also supports other chat plugins (herochat, iChat etc). To use another chat plugin with Towny... Set modify_chat.enable : false Then add any of the towny tags into your chat plugins format line. v0.77.0.0: - Release. v0.77.0.1: - Fixed resident colour in config. - Fixed creation of the logs folder for new installs causing an error at startup. - Added.. {townformatted} - Displays town name if a member of a town (using tag_format.town). {nationformatted} - Displays nation name if a member of a nation (using tag_format.nation). - Changed {townyfullnames} to {townyformatted}. - Fixed an error on town loading caused by the new plot level permissions. v0.77.0.2: - Towny now accepts worlds with spaces in their names. - Added a 'wilds' plot type. This type allows mayors to set the plot to wilds and it follows wilderness build/break rules for residents only. Handy for adding a protection zones arround a town where residents can farm tree's and plant sapplings. v0.77.0.3: - changed modify_chat.format to modify_chat.Chat_format so it will force an upgrade of the chat format for those having trouble with copy/paste. - Fixed Arena plots so they properly allow PVP. - Towny cheat protection no longer opperates in worlds where towny is disabled. - Fixed an error displaying the mayor error message when he attempts to leave town. - Fixed Switch permissions allowing users to open chests with certain items in hand. v0.77.0.4: - You can no longer add your own nation as an enemy/ally. - Extra parsing when loading comma delimited lines to prevent badly edited or empty elements causing issues. - Only plot owners/mayors and assistants can now use plot toggle. - Removed 'msg_not_town' from english.yml as it's not longer used. - Fixed '/res delete ' and made it admin only. Command will remove all traces of the resident (including deleting the residents data file). - Towny now supports the Essentials Cooldown and delay. - When using the Towny teleport delay, aborted teleports now refund the money. - Added '/townyadmin purge x', where x is a number of days. Removes all residents who havn't logged in for X amount of days. v0.77.0.5: - The notification when entering a town will now show if the town has PVP enabled. - Plot PVP settings will now cause a notification if you move between plots with different settings. v0.77.0.6: - Fixed ConcurrentModificationException in utilSaveTownBlocks. - added new commands... '/town set perm reset' - resets all town owned (non resident) plots to the towns default permissions. '/plot set perm reset' - resets all plots owned by you to their default permissions. - Fixed 'plot claim/unclaim' to set correct plot permissions based upon plot type. v0.77.0.7: - Added temporary support for Beta 1.9 builds. v0.77.1.0: - Release. v0.77.1.1: - Fix for PEX world based prefix/suffix. - Moved resident purging to it's own thread. - Towny will now remove any unused resident/town/nation files after it performs it's backup. v0.77.1.2: - Fixed reading/saving of coma delimited lists (eg switch_ids). These can now be set to be empty, so long as you edit it to read (switch_ids: ''). - Town block notifications will now correctly reflect the worlds Forced PVP status. v0.77.1.3: - Fixed revert_on_unclaim.block_ignore. It wasn't being written to the config so was being ignored. - Players joining with spaces in their names (hacked clients) will no longer kill Towny. - Prevent locked files causing a corrupt backup. v0.77.1.4: - Fixed TownyWorld commands to only be available for admins or at console. - Fixed '/plot set perm reset' and '/town set perm reset'. - Added a permission node 'towny.town.plottype' (User is able to alter plot types on plots they own). - Fixed Nation command to correctly check 'towny.nation.grant-titles' instead of towny.nation.titles'. - Added daily upkeep to the '/town' and '/nation' outputs. v0.77.1.5: - Active players now checks if a player is online, rather than only their last logged on time. - Towny backup now correctly shuts down the loggers before backing up (no more corrupt/locked files). - Towny now correctly removes economy accounts upon deletion of the resident/town/nation, instead of setting it to zero. - Added auto modes for chat. Type '/tc' to set town chat mode. All text typed from then on will be sent to town chat. While in a chat mode you can still talk in other channels by using the channel commands eg. '/nc hi'. While in a chat mode you can talk in global chat with '/g text here'. to clear all chat modes '/g'. - Added a new permission node for global chat ('/g') of 'towny.chat.global'. - added {worldname} as a chat tag entry. v0.77.1.6: - Fix residents accounts being wiped when a town is deleted. - Rotated the Towny compass to reflect the sun setting in the west. - Added 'delete_economy_account' so admins can control whether Towny will delete the economy account when it deletes the resident. v0.77.1.7: - '/plot claim' can again be used by mayors to recaim plots (which are not for sale) for the town. v0.77.1.8: - Fixed missing dependency when using '/towny top money all'. v0.77.1.9: - Added minimum distance checks on outpost claims 'min_distance_from_town_homeblock'. - Players are now able to create towns/nations if permissions are disabled 'using_permissions : false'. - Updated permission nodes in config.yml. - Added a new entry in 'Default Town/Plot flags' so admins can configure the defaults for pvp,fire,explosions and mob spawns. - Added new settings in 'Default new world settings' for fire, explosions and enderman pickup/place. Admins can now configure settings per world for the wilderness. - Adjusted world PVP so it only affects the wilderness. You can now disable PVP in the wilderness yet allow it in towns (enabled town pvp overrides plot pvp). v0.77.1.10: - Fixed War plot damage messages to correctly display. - Fixed War timers so you can once again start wars with '/townyadmin toggle war'. - Added a new toggle so you can disable block damage during a war event (allow_block_griefing). - Adjusted Towny cheat protection so it will not affect players in creative mode. - Fixed loading of allies for nations. - Fixed typo for towny.cheat.bypass in new permission node code. v0.77.1.11: - Explosion regen now fills the hole from the bottom up (No more bouncing loot). - Prevented 'plot fs $' from using negative values. - Rotated 'towny map' so north is at the top again. - Added new plot type identifiers on the towny map. W - Wilds C - Commercial/Shop A - Arena (shop plots which are for sale will show up as a blue $) v0.77.1.12: - You can now set default modes via permissions. To set a group/user to default to town chat and have the map as they walk... If using GroupManager... add an Info node to the group/user towny_default_modes: 'tc,map' If using PEX... add an Options node for towny_default_modes: 'tc,map' If using any other perms system (not guaranteed to work) add a permission node - towny_default_modes.tc,map v0.77.1.13: - Added thrown potions to the PVP protection tests (not fully implemented in Bukkit yet). - '/townyadmin town/nation' command is now useable at the console. v0.77.1.14: - If using GM this version requires latest Dev GroupManager 1.7.5+ for all features to work fully. - Implemented new GM event system. - '/g' global chat mode now applies chat formatting again. - Implemented PEX events. V0.77.1.15: - Fixed Null return from getPlayerPermissionStringNode when using PEX. - '/town set perm reset' and '/res set perm reset' now correctly update the plot data files. v0.77.1.16: - '/plot perm' on a town owned plot now correctly shows R for resident instead of F for friend. - Fixed World settings for Explosions. - Permissions are now correctly read from the plot rather than the town. Town level permisisons are defaults and changes propogate with '/town set perm reset'. - You can no longer add town assistants who are not members of your town. - Added a new command '/resident tax'. Shows the total taxes a player will have to pay at the next new day. v0.77.1.17: - Fix for bPermissions removing it's .has() function. v0.77.1.18: - Allow killing of mobs in the wilderness for worlds with PVP disabled. v0.77.1.19: - Changed wild permission nodes to accept negation after '*'. You can now use wild perms as a whitelist and blacklist. If using GroupManager or any system which accepts wildcards... to use as a whitelist, use the existing... towny.wild.block.{id}.* to use as a blacklist... towny.wild.* -towny.wild.block.{id}.* v0.77.1.20: - Fixed towny.wild.block.{id}... to allow overriding of Admin permissions. - Fixed a typo on towny.town.toggle.explosions - Mayors and assistants can once again change the plot type on resident owned plots. v0.77.1.21: - Fixed world loading of the force town mobs setting. - Fixed wild perms for non admins. v0.77.1.22: - Fix for bPerms and super perms not supporting wildcards. - Wild block ignore permissions no longer fall back to world settings, if set to use a permissions provider. v0.77.1.23: - Removed spammy wilderness action messages. v0.77.1.24: - Added comments to World data files. - Extended default wild regen setting to 20 seconds. - Added a german translation file Set to german in config. - Fixed processing of GM/PEX events. v0.77.1.25: - Allow op to override in all permissions. v0.77.1.26: - When loading data files assistants will only be added to the town if they are also a resident (no more errors). - Mayors of other towns can no longer perform '/plot set perm reset' in your town. - Fixed '/town claim auto'... again. - Fixed a NullPointerException in SetDefaultModes task caused by another plugin kicking a player at login. - New functions allowing Townychat to observe Essentials mute and ignore functions. v0.77.1.27: - Added a kick function to '/townyadmin town kick []..[]'. - Monsters killed in an arena plot no longer drop any loot. - refactoring of some code. - Minimum version of CraftBukkit updated to 1597. v0.77.1.28: - Fix default Town PVP/FIRE/EXPLOSION/MOB settings. - Setting town perms now propogate to any townBlock which have not been manually altered. - Setting plot perms will flag that plot as altered so it will not longer update with the towns perms. - Performing '/town set perm reset' will propogate all permission changes to town owned plots, and reset any changed flags. - Performing '/res set perm reset' will propogate all permission changes to that residents owned plots, and reset any changed flags. - Added CraftIRC support to TownyChat. Add a channel tag of 'admin' to the receiving channel in the craftIRC config. Disable Auto paths and add the following to the 'paths:' section - source: 'minecraft' target: 'admin' formatting: chat: '%message%' - source: 'admin' # These are endpoint tags target: 'minecraft' # formatting: chat: '%foreground%[%red%%ircPrefix%%sender%%foreground%] %message%' v0.77.1.29: - '/Plot claim x' will no longer throw a Not Registered error when it selects plots outside the town. - Improve file handle closing to prevent too many open file errors. - chat modes can now be toggled on and off by repeating the channel command. Eg. '/tc' = on, '/tc' = off. v0.77.1.30: - Fixed Painting place to once again observe plot permissions. - Paintings are now protected against lightning and fireballs through plot/town and world explosion settings. - Endermen can now pickup and place blocks agian in worlds where Towny is disabled. - Towny health Regen will now trigger a EntityRegainHealthEvent to keep other plugins in sync (Heroes). - Added a new 'public' setting in 'Town Claim/new defaults' to set the default public status of a town at creation. - bukkit_version in the config now correctly updates for the minimum required CraftBukkit. - Each world now supports seperate chat formatting, if enabled in the Towny config (per_world). Modify the channel formats in the worlds data file instead of in the config (plugins/towny/data/worlds). v0.77.1.31: - friendly_fire now prevents allies from fighting in the wilderness as well as in town (excluding Arena plots). - TownyChat now passes player chat to Dynmap. - '/Plot claim' now correctly updates the data files with the plot owners permissions. v0.77.1.32: - Denied switch use in the wild now generates a readable error message again. - Wild block permissions now support wildcards. eg. towny.wild.block.*.build - Added a new set of permissions for town overrides (ideal for moderators). towny.claimed.* : User can build/destroy/switch/item_use in all towns. towny.claimed.build : User can build in all towns. towny.claimed.destroy : User can destroy in all towns. towny.claimed.switch : User can switch in all towns. towny.claimed.item_use : User can use use items in all towns. towny.claimed.alltown.block.* : User is able to edit specified/all block types in all towns. towny.claimed.alltown.block.*.build towny.claimed.alltown.block.*.destroy towny.claimed.alltown.block.*.switch : User can switch specified/all block types in all towns. towny.claimed.alltown.block.*.item_use towny.claimed.owntown.block.* : User is able to edit specified/all block types in their own town. towny.claimed.owntown.block.*.build towny.claimed.owntown.block.*.destroy : (handy to allow clearing of snow '78') towny.claimed.owntown.block.*.switch towny.claimed.owntown.block.*.item_use - Added a new node 'towny.town.claim.outpost' to allow/block claiming of outposts via permissions. Will still require outposts to be enabled in the config. v0.77.1.33: - Added a new taxing system where you can pay plot owners an income for each plot they own. Set a negative town upkeep and enable 'use_plot_payments'. At a new day the negative upkeep will be used to calculate the towns upkeep, but instead of taking it from the town, it will be divided between the plot owners. These funds are paid by the server, not the town. - You can now disable the CraftBukkit version check if you wish to take a risk with untested builds (bypass_version_check). v0.78.0.0: - Release. v0.78.0.1: - Fix upkeep so it won't attempt to make payments of zero amounts. - Added a regenerate command for admins '/townyworld regen' (not decided if this will stay yet). This command will regenerate the chunk the player is in using the current world seed. It will only work on FULL (16x16x128) chunks, and only if your default plot size is still set to 16. *BEWARE* ths command has no undo feature. Once issued there is no going back. - Added '/plot toggle' to the plot help screen. - Fixed the error report when Towny fails to perform a daily backup. - Slight change to onLogin to try and stop 0kb resident file creation (suspect some other plugin is running in it's own thread kicking a player at the wrong time). - Any residents who are corrupt/missing at startup will no longer prevent Towny loading. They will be removed and the files tidied up. - Fixed saving of plot regens, so they will now resume after a server restart. v0.78.0.2: - Added '/ta town {name} rename {newname}' - Added '/ta nation {name} rename {newname}' - Fixed '/towny prices' to correctly display your own towns prices (if you are a resident in a town). - Rework of player death and death costs to trigger on a player death and not on damage (no more multiple charges). Players will be charged only when killed by another player, monster or trap like a dispenser firing arrows. Deaths from falling etc will not incur a cost. v0.78.0.3: - Town explosion settings no longer override individual plot settings. They only control the town owned plots. - Reworked claiming/unclaim to be threadsafe (no longer throws errors in NoLagg). - When claiming new townBlocks and using PlotManagementRevert all new claims will be locked until the snapshot has been taken. Building/breaking in the plot will be disabled until the snapshot is finished. - Fixed hook for bPermissions to work with bPerms v2. - Fixed '/ta town {name} kick {player}'. v0.78.0.4: - Allow ops all access rights when not using permissions. - Removed a lot of New Day spam to cut down on the lag during the accounting. - Major reorganization of code in advance of SQL support. Any plugins which hooked TownyUniverse to read data should find the same functions in TownyUniverse.getDataSource(). - Added group prefix support as well as player prefix for bPermissionsV2. v0.78.0.5: - Fixed '/town spawn' when players have teleport disable toggled in essentials. - Changed 'towny.town.claim' to default to false in superperms. - Fixed Changing database types between load and save (new code). v0.78.0.6: - Nations breaking an alliance will now result in the opposing nation removing the ally status too (they can retaliate). - If another nation has you set as an enemy you can no longer set them as an ally to avoid conflict (PvP). - Fixed NullPointerError when reading default modes using Perms 3.x. - Added '/tw undo' with five levels of undo for the '/tw regen' command. The undo memory is for the last 5 regen actions and is persistant between logins (not server restarts). v0.78.0.7: - If Towny fails to load it 'should' now lock everything into safe mode until it's fixed. No one will be able to do anything at all until the fault is cleared. v0.78.0.8: - Fix for not being able to eat (caused in 0.78.0.7). v0.78.0.9: - Towny no longer complains if you have an empty mob removal list (''). - Added the ability to restrict channel ranges in TownyChat. All custom channels (not town or nation) can now have an extra value appended to signify a range limit on chat. -1 = no limits 0 = same world only any positive value = limited range in the same world. eg. - /g,,,towny.chat.global,-1 or a local channel that covers 100 blocks range /l,&f[local],&f,towny.chat.local,100 - Added a 'spleef' plot type (for future development). - Added a spam filter to TownyChat so players can only send one message every two seconds. - Update players cache properly when teleporting, so '/town claim' etc get the right location if you then don't move. v0.78.0.10: - Added a new mode '/towny spy', or '/res set mode spy'. This requires you have the permission node 'towny.chat.spy' and be using TownyChat. If you toggle this mode on you will be able to see all town/nation/global, and all custom channel chat. - If a player doesn't have the 'towny.chat.global' permission node, any open chat will pass through for any other plugins to handle. v0.78.0.11: - ***** BEFORE USING THIS VERSION BACKUP YOUR CHANNELS (from config) AS THEY WILL be WIPED ***** - Added a spanish translation. - Fixed an error when trying to create a language file which doesn't exist (non english). - Moved all chat code to TownyChat (chat formats are still in config and world files). - All chat channels are now defined in their own file 'Channels.yml' found in the Towny/Settings folder. - Range limits can now be applied to town and nation chat. - You can create two identical channels, one with a range limit and one without. The player will use whichever they have permission for. - towny_default_modes now uses the full chat channel name. To allow use of the default channel it would be towny_default_modes: 'general' - Fixed up javadocs - http://palmergames.com/javadoc v0.78.0.12: - Fixed typo in comments. - Code cleanup: Plot Types AsciiMap Keys are now in the right class. More specific error messages. Refactored error class to use standard variable. - Added option for town respawn to only happen when the player dies in the same world as the spawn point. - Added option for a town to open it's gates and let players join without needing to be invited. /town join [town] (Console: town join [resident] [town]). (Open) is shown in the town's status as well as in '/town list'. To set a town as open '/town toggle open'. - New Lang: msg_err_already_in_town, msg_changed_open, msg_toggle_open_on_warning, msg_err_not_open ***** WARNING BACKUP YOUR CHANNEL SETTINGS AS THEY WILL BE WIPED ***** - Moved all chat settings to townyChat's own 'ChatConfig.yml' and removed all remaining chat functions from Towny. v0.78.0.13: - Updated to support Dev CraftBukkit for 1.1 with new event system. - Updated minimum CraftBukkit version to 1792. - Implement new Bukkit event system supporting new GroupManager and PEX (if they update). v0.78.0.14: - Fix for new installs failing to create a new config due to a bukkit bug in getMapList. - Fix for handling GM System Events. v0.78.0.15: - Fixed Error reporting when trying to add a non resident as a town assistant. - Fix flag war to correctly observe it's config enable setting. v0.78.0.16: - Fix for my fix for the Bukkit bug mentioned in 0.78.0.14. v0.78.0.17: - Fixed an error on Setting player modes caused by Bukkit passing null objects. - Fixed Upkeep plot payments to pay on the current size of the town. - Fix PEX out of date message. - Trap errors for GM/PEX events we don't want to track. v0.78.0.18: - plot_management block_delete items are now queued and processed one TownBlock at a time, upon a Town unclaiming a plot. - New Day code has been returned to an Asyncronous thread now that the block delete has it's own queue. - Added a new config setting for town open status of new towns 'default_open' in 'Town Claim/new defaults'. - Added a character limit on town and nation names 'max_name_length'. Defaults to 20 characters. v0.78.0.19: - Added potion splash protection for non PvP areas. - Nation tax now follow the 'max_tax_amount' cap. - Outposts can now have their own spawns. The plot you claim as an outpost is the plot which can contain a spawn. It cannot be moved to another plot. Outpost spawns can be set with '/town set outpost' Outpost spawns can be used via '/town outpost x' (With x being a number 1 - however many outposts you own). v0.78.0.20: - Added Outpost's to the Chunk notifications. They use the formatting from Outpostblock in 'Town Notifications'. v0.79.0.0: - release v0.79.0.1: - An invalid setting of the Plot Management speed will now disable snapshots instead of locking a plot and never releasing it. - Exit from the BlockPhysics event sooner if we do not need to be in there (no regen). - Change PlayerMove event to update the cache for the player the event relates to, not all online players. - Minor optimization of Block Burn events. - Minor changes to PlayerInteractEvent to increase performance. - Added a new entry in Nation levels 'townBlockLimitBonus'. Joining a nation can now net you bonus TownBlocks. (Configs will not update for this. To enable, delete the nation_level entries and Towny will add a fresh set of data upon startup) - Fixed Fire setting in the '/townyworld' status page. - Prevent fire arrows causing fire damage when PvP is off. v0.79.0.2: - Added Unclaim revert and explosion revert settings to the '/tw' status display. - Added toggles for Unclaim revert and Wilderness explosion revert. '/tw toggle revertunclaim' and '/tw toggle revertexpl' - Added an entities list to wild_revert_on_mob_explosion. You can now add any entities here you want explosions to revent for in the wilderness (including TNTPrimed). These settings are copied to the individual world files, so you must make changes per world. - Fixed a bug where you could create a town with the same name as another. v0.79.0.3: - Fixed saving of outpost spawns. It was only saving the first spawn and losing the rest. - Improve new town/nation name validation. v0.79.0.4: - Move all Name checks to their own class and consolidate tests. v0.79.0.5: - Fix Healthregen to fire an event with the proper health level, instead of increased. - Fixed Teleport timers to send you to the outpost (if chosen), rather than the town spawn. v0.79.0.6: - Convert Flag war timers to run Syncronous, instead of Async in a paused thread (no more NoLagg error messages). v0.79.0.7: - check for null entities in the EntityExplodeEvent (MobArean generates them). - Stop Towny overwriting non-english language files (again). - Stop towny throwing an NPE when devs are accessing the API attempting to get town data without checking the town exists first. - Improve error trapping on getResident/getTown and getNation to prevent other plugins causing internal errors when asking for data they havn't checked exists. - Fix Flag war upon a win claiming the plot for the victors. v0.79.0.8: - Added 'My Worlds' the the plugin depends list of multiworld plugins. v0.79.0.9: - Allow Ally and and Enemy status to be overridden by 'towny.claimed.*' permissions. - Fix '/town set name' to work again. - Better optimize EntityExplodeEvent. v0.79.0.10: - Fix ForcedPvP in the wilderness. - Update for craftbukkit-1.1-R4 (1938). - Added EntityCombustByEntityEvent handler to prevent fire arrows igniting players when PvP is disabled. - Disallow setting of pvp/fire etc with '/town set perm'. Also from plot and resident commands (only allowed via toggles). v0.79.0.11: - Expand '/plot clear' usage to plot owners. - Fix '/plot toggle' to correctly observe the permisison nodes for toggling. v0.79.0.12: - Remove all chat permissions from plugin.yml as they noew register correctly via TownyChat. v0.79.0.13: - Update to support the new bpermissions api. - Fix 'plot clear' for plot owners. v0.79.0.14: - Update for Bukkit R5 compatability. v0.79.0.15: - Don't allow players to kill animals in plots they don't have destroy permissions in. - Rework of Plot revert so adjusting it's timer will not affect plot claiming (snapshots). - Fix hooking of GroupManager Events (use action instead of event name). v0.79.1.0: - Dynamically register child permissions for block types. Should reduce CPU load and increase performance of Towny. This will also allow you ot grant a parent node and negate child elements. eg. - towny.wild.* - -towny.wild.block.2.destroy - Update for Craftbukkit-1.1-R6. v0.79.1.1: - Updated to support Register 1.7 and Craftconomy. v0.79.1.2: - Fix saving World lists and world data. - If a plot is found to be locked, be certain it's queued for a snapshot. v0.79.1.3: - Reduced the total block count from 4096 to 512 (temporarily). - Correctly update data files when a town/nation is renamed. - Fix world setting checks when not using permissions. - Rework permission inheritances to reduce lag. - Added a permission node to allow teleporting to your towns outposts - 'towny.town.spawn.outpost' (defaults to true, but follows town spawn permissions). - Death events in non-towny worlds are no longer tracked for war or death payments. v0.79.1.4: - First beta of SQL database handling (MYSQL only at the moment). - Add support for h2/sqlite SQL formats. - Added a new setting under War events 'towns_are_neutral'. If set to false, all towns not in nations are attackable during a war event. - Block 'fire charge' from lighting fires if firespread is disabled (added to item_use_ids). v0.79.1.5: - Make all SQL tables uppercase. v0.79.1.6: - Plots lost due to taxes are no longer put up for sale and have their permissions correctly set for their type as per the town settings. - Fixed a bug where you could bypass a toggle permission (plot and town) by using an upper case letter. - Creating a new town now correctly sets the plot permissions for the homeblock at creation. - '/plot clear' works again on plots lost due to taxes and all other unowned plots. v0.79.1.7: - Fix updating the nation file if the renamed town was the Capital. - Attempt to delete old economy accounts when a town/nation is renamed. v0.79.1.8: - MAJOR changes to permission nodes to facilitate the following. - Reduce the number of nodes Towny needs to register. - Reduce Server lag due to so many permissions - Allow for future expansion as new block numbers are used. - The following nodes have changed... 'towny.wild.block.[id].build' is now 'towny.wild.build.[id]' 'towny.wild.block.[id].destroy' is now 'towny.wild.destroy.[id]' 'towny.wild.block.[id].switch' is now 'towny.wild.switch.[id]' 'towny.wild.block.[id].item_use' is now 'towny.wild.item_use.[id]' 'towny.claimed.owntown.block.[id].build' is now 'towny.claimed.owntown.build.[id]' 'towny.claimed.owntown.block.[id].destroy' is now 'towny.claimed.owntown.destroy.[id]' 'towny.claimed.owntown.block.[id].switch' is now 'towny.claimed.owntown.switch.[id]' 'towny.claimed.owntown.block.[id].item_use' is now 'towny.claimed.owntown.item_use.[id]' 'towny.claimed.alltown.block.[id].build' is now 'towny.claimed.alltown.build.[id]' 'towny.claimed.alltown.block.[id].destroy' is now 'towny.claimed.alltown.destroy.[id]' 'towny.claimed.alltown.block.[id].switch' is now 'towny.claimed.alltown.switch.[id]' 'towny.claimed.alltown.block.[id].item_use' is now 'towny.claimed.alltown.item_use.[id]' v0.79.1.9: - Fix deleting of nations at newday. - Change a couple of sql data types from tinyint to bool's. - Add file creation (if not present) for snapshot_queue.txt to the sql data handler. - Fix saving a towns setting for tax percentage (SQL). - SQL loading should set the towns tax percentage setting before setting the tax. v0.79.1.10: - Update for 1.2.4-R1.0 (2126) v0.79.1.11: - Broke admin permissions into seperate nodes. They are all children of 'towny.admin'. - towny.admin.town: Allows a player to use '/ta town add/kick' - towny.admin.nation: Allows a player to use '/ta nation add/kick' - towny.admin.set: Grants access to '/ta set' allowing a player to set and remove NPC mayors. - towny.admin.reload: Reload all towny settings and data. - towny.admin.reset: Generate a fresh config.yml and perform a full reload of Towny. - towny.admin.toggle: Allows a player to toggle any adming settings using '/ta toggle' - towny.admin.givebonus: granting of bonus plots to a player/town - towny.admin.backup: perform a backup - towny.admin.newday: run a new day event for taxes - towny.admin.purge: Remove old residents '/ta purge 30' - towny.admin.unclaim: Force unclaim of a town plot (any town) - Change default permissions on 'shop' plots to follow the owners permissions. v0.79.1.12: - Expanded the plot command permission into child nodes. - towny.town.plot.claim: Allows use of '/plot claim' - towny.town.plot.unclaim - towny.town.plot.notforsale - towny.town.plot.nfs - towny.town.plot.forsale - towny.town.plot.fs - towny.town.plot.perm - towny.town.plot.toggle - towny.town.plot.set - towny.town.plot.clear: Allows use of plot clear (mainly for mayors). v0.79.1.13: - Fix for me breaking op's wild override. - Fix Admin commands from the console. v0.79.1.14: - Flag war mode now supports economy payments for specific events. Those being: - Payment to server - to place a warflag. - Attacking flagbearer - pays the defender who broke the flag during a successful defend. - Pillage fund - from defending town during a succesfuly attack. A different amount can be set for the homeblock. (Using a negative amount for pillaging will instead cause the attacker to pay a 'rebuilding cost'.) v0.79.1.15: - You can no longer stand in a non-pvp area and safely shoot players outside in pvp areas. - Prevent TnT being regenerated if destroyed in explosions. - Fix Wild perms so it will follow the world settings if no permissions are found. v0.80.0.0: - Release for MC 1.2.4 v0.80.0.1: - Fix monster spawning to obey the 'Force Town Mobs' world setting. - Add tentative support for Citizens2 to prevent removing NPC created as monsters. v0.80.0.2: - Change Newday code to use iterators instead of creating new arrays (reliability and performance). v0.80.0.3: - Add checks to make sure nations/towns/residents still exist when taxing as it's run in an async thread. - Remove the UnclaimedZoneIgnoreId's test when we are using permissions. We should only check the enable/disable flags on the world if the player doesn't have the perms. v0.80.0.4: - Fix Enderman protection block move to follow the world toggle and ignore all other settings. v0.80.0.5: - Move all Combat test functions to their own class. All now available via 'CombatUtil' (for other plugin devs). v0.80.0.6: - Lets have another go at stopping these nations hanging on after they should be removed. - Refactor a bunch of classes for better organisation. ** Will likely break many plugin hooks due to moved exception classes ** - Fix cached Wild perms to use the world settings rather than global. - More javadocs. - Added UID's to the TownyObject for later implementation. v0.80.0.7: - Added a new economy handler with support for... - Register - Vault (will require a build newer than 1.2.15-b172) - Native iConomy 5.01 v0.80.0.8: - Moved all player modes under the resident object. Modes can now be toggled using the command '/res toggle [mode]', as well as the already existing '/res set mode [mode]'. An example would be '/res toggle map townclaim'. This would change the state for both of these modes to the opposite of what they were (on/off). Issuing a command of '/res toggle' will clear all modes and set the defaults. - Added a new mode '/res toggle plotborder'. This will puff smoke along the plot boundary when you enter a plot to show it's edges. Ideal for marking out plots. v0.80.0.9: - Fix perms for... towny.wild.build/destroy/switch/item_use towny.claimed.build/destroy/switch/item_use - Update the TownBlock data when a plot is taken/given back to the town so it will correctly follow the towns permissions once again. - Save the town data to preserve the 'for sale' status when a townblock is put up, or taken off sale. - Players will now receive a warning message if their town or nation is due for deletion at the next new day tax period. v0.80.0.10: - Move player login code to run in a seperate thread, and configure data retrieval and saving to be syncronized. - Rework Towny Regen to 'hopefully' prevent the incorrect world height being set. - Outposts can no longer be claimed in worlds which are set as unclaimable. v0.80.0.11: - Rework all PvP and PvM code to properly prevent damage where approriate. - Added Villagers to be protected the same as animals when in a town. - Added two new Admin commands... '/townyadmin town [name] delete' '/townyadmin nation [name] delete' - Fix resident purge so it correctly filters up when updating towns/nations. - Better optimize damange prevention v0.80.0.12: - Synchronize backup/delete to prevent lockups. v0.80.0.13: - Simplify Wild and claimed permission nodes to reduce confusion and make the permission tests faster. Node changes... towny.wild.*: description: User can build/destroy/switch/item_use in the wild. default: false children: # You can grant these child nodes and replace the * with a block Id # to directly set or negate specific block permissions towny.wild.build.*: true towny.wild.switch.*: true towny.wild.destroy.*: true towny.wild.item_use.*: true towny.claimed.*: description: User can build/destroy/switch/item_use in all towns. default: false children: # You can grant these child nodes and replace the * with a block Id # to directly set or negate specific block permissions towny.claimed.owntown.build.*: true towny.claimed.alltown.build.*: true towny.claimed.owntown.item_use.*: true towny.claimed.alltown.item_use.*: true towny.claimed.owntown.destroy.*: true towny.claimed.alltown.destroy.*: true towny.claimed.owntown.switch.*: true towny.claimed.alltown.switch.*: true Nodes removed (with no replacements)... 'towny.claimed.build' 'towny.claimed.destroy' 'towny.claimed.switch' 'towny.claimed.item_use' 'towny.claimed.owntown.*' 'towny.claimed.alltown.*' - Major rewrite of the player caching system. Should make things faster when handling most events. - Stop resetting the players cache on every location change. Only clear it if we cross a TownBlock boundary. v0.80.0.14: - Towny now removes old zip backups when using SQL as well as flatfile. - Synchronize old backup deletion - Fix all file access so it no longer leaves any open streams. - Yet MORE optimizations - Fix Towny time to count properly with non standard day cycles. - Recode Towny time to work with different time zones and daylight savings. - Fix an error in the player cache when the player attempting the action has no town. v0.80.0.15: - Updated all cache references to correctly update when plot permissions change. - Stop giving point for allied kills in Event War. v0.80.0.16: - Fix an error where a player not in a town would be protected when in a warzone, even when not allowing neutrals during war. - Fix permission overrides for Towny Ally and outsiders. v0.80.0.17: - Stop deadlock in the DataSource when called from seperate threads. We use HashTables so no need to lock the whole class. - Prevent NPE's if bukkit passes a null when getting online players. v0.80.0.18: - Modify the EntityChangeBlockEvent handler to make it easier to handle when bukkit implements other creature types than Endermen. - 'plotborder' smoke is now sent to the target player only. - Fix Arena plots so they are useable by players with friendly fire off. v0.80.0.19: - Make war the war results page a little more understandable (event war). - Fix sending attack update messages to town defenders as well as attackers (event war). v0.80.0.20: - Finally fix the error with world height on some systems for plot regen (thanks Peewi96). v0.80.1.0: - Release. v0.80.1.1: - Fix Towny Economy failing to get a world when a town has no townblocks. v0.80.1.2: - Added a config option to only allow attack borders during flag war (disabled allows you to attack any plot). - Fix Forced PVP to actually do something with the new combat code. - Fix sign removal upon a town deletion. v0.80.1.3: - Fixed integration with Citizens2 for their API changes. - Towny now raises events when a resident joins or leaves a town (handy for other plugins to monitor). - Lets see if we can't stop these occasional NPE's when groupmanager reloads. v0.80.1.4: - Revert earlier fix for NPE's when GroupManager reloads. - Added empty potion bottles to the item_use protection list. v0.80.1.5: - Fix '/plot clear' so outsider mayors can't use it. v0.80.1.6: - Added native support for Tekkit and any mods which require the use of a fake player. - Do not remove entities from unloaded chunks (fix for Multiverse Adventure worlds not resetting). - Fix regen tasks so they respawn the correct type of CreatureSpawner. - Fix regen tasks so signs keep their text. - Add chest support to wilderness regen/explosion protection (they also no longer drop their contents if being regen'd). - Greatly improved '/tw regen' and /tw undo' (also Tekkit compatible). v0.80.1.7: - Fix the backup so it will only backup files it can actually read instead of throwing an error. - Fix town animal protection so no one can kill the animals in a plot unless they have perms to break grass in that plot. - Fix lava/water bucket hack/exploits. - Add finer control over block permissions. You can now allow the use of specific block types via permissions. eg. Granting '- towny.wild.build.35' allows a player to place wool blocks in the wilderness. Now you can grant '- towny.wild.destroy.35:1' allowing them to only break brown wool. This adds support for custom block types used in mods such as IndustrialCraft, Redpower etc. v0.80.1.8: - Fix '/plot set' so only the towns mayor or assistants can change town plot types (no outsider mayors). - Stop trying to reset a non-existant cache for the Console when using '/ta town add' - You can now disable Enderpearl teleporting buy adding them to the item_use entry in the config (permissions will override). - Fix '/plot claim' when not using a permission system. v0.80.1.9: - Update SQL database drivers to use sqlite instead of h2 when selected. - Really fix the NPE when PEX/GM generates a System update event. v0.80.1.10: - Close all SQL Statement objects as soon as possible to prevent tying up the database (SQLite fix). - Fix for MySQL using tinyint to hold Booleans. SQL datbase names changed for h2 and SQLite databases. If you use this version you need to rename your current h2/sqlite database in the data folder from 'towny' to 'towny.sqldb' or 'towny.h2db' v0.80.1.11: - Added the missing code to handle '/resident toggle {pvp/fire/explosion/mob}'. v0.80.1.12: - Allow your own potions to affect you, even if you have friendly fire turned off. - Simplify permission negation so you don't have to negate every data type of a block. (May not work with PEX as PEX doesn't return the correct value for 'isPermissionSet' on a negated permission). - Save the Nation when removing a resident from a town (in case they were an assistant). - Only show a resident as Online if the requesting player is able to see them (allow for vanish). - Remove all resident titles/surnames when deleting a nation. - Remove all resident titles/surnames when a town leaves a nation. v0.80.1.13: - Fix NullPointerException when handling fake players on modded servers (aka. Tekkit). v0.81.0.0: - Release. v0.81.0.1: - Make buckets test against item_use instead of testing the block they are being used on. v0.81.0.2: - Added town/nation ranks so server admins can create custom ranks with custom permission sets. Any existing players set as assistants will lose their rank and need to have it re-assigned. - New commands '/town rank add/remove ' '/nation rank add/remove ' - Added Towny's own permission system (townyperms.yml). This system pushes permissions directly to Bukkit and works along side all other perms plugins. It allows you to define sets of permissions based upon a players status (nomad/resident/mayor/king). You can also assign additional permissions based upon any assigned town/nation ranks (assistant/vip etc). This system is not limited to Towny perms. You can assign any permissions for any plugins in it's groups. - Deprecated the following permission nodes (all have replacements)... All 'towny.town.toggle...' nodes, and the following... towny.top towny.town.* towny.town.new towny.town.delete towny.town.rename towny.town.claim towny.town.claim.outpost towny.town.plot towny.town.plot.* towny.town.plottype towny.nation.* towny.nation.new towny.nation.delete towny.nation.rename towny.nation.grant-titles - New permission nodes (auto assigned in townyperms.yml) towny.command.nation.list towny.command.nation.new towny.command.nation.leave towny.command.nation.withdraw towny.command.nation.deposit towny.command.nation.rank.* towny.command.nation.king towny.command.nation.set.* towny.command.nation.set.king towny.command.nation.set.capitol towny.command.nation.set.taxes towny.command.nation.set.name towny.command.nation.set.title towny.command.nation.set.surname towny.command.nation.set.tag towny.command.nation.toggle.* towny.command.nation.toggle.neutral towny.command.nation.ally towny.command.nation.enemy towny.command.nation.delete towny.command.nation.online towny.command.nation.add towny.command.nation.kick towny.command.town.* towny.command.town.here towny.command.town.list towny.command.town.new towny.command.town.leave towny.command.town.withdraw towny.command.town.deposit towny.command.town.rank.* towny.command.town.set.* towny.command.town.set.board towny.command.town.set.mayor towny.command.town.set.homeblock towny.command.town.set.spawn towny.command.town.set.outpost towny.command.town.set.perm towny.command.town.set.taxes towny.command.town.set.plottax towny.command.town.set.shoptax towny.command.town.set.embassytax towny.command.town.set.plotprice towny.command.town.set.shopprice towny.command.town.set.embassyprice towny.command.town.set.name towny.command.town.set.tag towny.command.town.buy towny.command.town.toggle.* towny.command.town.toggle.pvp towny.command.town.toggle.public towny.command.town.toggle.explosion towny.command.town.toggle.fire towny.command.town.toggle.mobs towny.command.town.toggle.taxpercent towny.command.town.toggle.open towny.command.town.mayor towny.command.town.delete towny.command.town.join towny.command.town.add towny.command.town.kick towny.command.town.claim.* towny.command.town.claim.town towny.command.town.claim.outpost towny.command.town.unclaim towny.command.town.online towny.command.plot.* towny.command.plot.claim towny.command.plot.unclaim towny.command.plot.notforsale towny.command.plot.forsale towny.command.plot.perm towny.command.plot.toggle.* towny.command.plot.toggle.pvp towny.command.plot.toggle.explosion towny.command.plot.toggle.fire towny.command.plot.toggle.mobs towny.command.plot.set.* towny.command.plot.set.perm towny.command.plot.set.reset towny.command.plot.set.shop towny.command.plot.set.embassy towny.command.plot.set.arena towny.command.plot.set.wilds towny.command.plot.set.spleef towny.command.plot.clear towny.command.resident.list towny.command.resident.tax towny.command.resident.set.* towny.command.resident.set.perm towny.command.resident.set.mode towny.command.resident.toggle.* towny.command.resident.toggle.pvp towny.command.resident.toggle.explosion towny.command.resident.toggle.fire towny.command.resident.toggle.mobs towny.command.resident.friend towny.command.townyadmin.* towny.command.townyadmin.set.* towny.command.townyadmin.set.mayor towny.command.townyadmin.town.* towny.command.townyadmin.town.new towny.command.townyadmin.town.add towny.command.townyadmin.town.kick towny.command.townyadmin.town.delete towny.command.townyadmin.town.rename towny.command.townyadmin.nation.* towny.command.townyadmin.nation.add towny.command.townyadmin.nation.delete towny.command.townyadmin.nation.rename towny.command.townyadmin.toggle.* towny.command.townyadmin.toggle.war towny.command.townyadmin.toggle.neutral towny.command.townyadmin.toggle.devmode towny.command.townyadmin.toggle.debug towny.command.townyadmin.toggle.townwithdraw towny.command.townyadmin.toggle.nationwithdraw towny.command.townyadmin.givebonus towny.command.townyadmin.reload towny.command.townyadmin.reset towny.command.townyadmin.backup towny.command.townyadmin.newday towny.command.townyadmin.purge towny.command.townyadmin.unclaim towny.command.townyadmin.resident.delete towny.command.towny.* towny.command.towny.map towny.command.towny.top towny.command.towny.tree towny.command.towny.time towny.command.towny.universe towny.command.towny.version towny.command.towny.war towny.command.towny.spy towny.command.townyworld.list towny.command.townyworld.set towny.command.townyworld.toggle.* towny.command.townyworld.toggle.claimable towny.command.townyworld.toggle.usingtowny towny.command.townyworld.toggle.pvp towny.command.townyworld.toggle.forcepvp towny.command.townyworld.toggle.explosion towny.command.townyworld.toggle.forceexplosion towny.command.townyworld.toggle.fire towny.command.townyworld.toggle.forcefire towny.command.townyworld.toggle.townmobs towny.command.townyworld.toggle.worldmobs towny.command.townyworld.toggle.revertunclaim towny.command.townyworld.toggle.revertexpl towny.command.townyworld.regen towny.command.townyworld.undo v0.81.0.3: - Fix SQL reading towny-rank when it should be town-ranks. - Fix an error setting permissions on Load for Nations. v0.81.0.4: - Added PersonalWorlds and WormholeXTremeWorlds as supported multiworld plugins. v0.81.0.5: - God I hate MySQL queries. - Change OnPlayerLogin to a DelayedSync task as we now push Towny perms and Bukkit perms are not thread safe. v0.81.0.6: - Add missing towny.command.resident.* permission. - Fix typo on 'towny.command.town.add' permission. v0.81.0.7: - Fix player permissions not being updated when performing a '/ta reload'. v0.81.0.8: - Fix explosion regen so containers respawn with the correct inventories. - Add two missing permissions to the plugin.yml towny.command.town.claim.town towny.command.town.claim.outpost v0.81.0.9: - Reset a players ranks when they leave a town. - Fixed a missing space when adding/removing friends to/from your friends list (English and german language files). - Updated mayor help for new rank command. v0.81.0.10: - Added the ability to prevent spawning/breeding of villager babies at the world or town level. - Fixed an ArrayIndexOutOfBoundsException when trying to use '/plot set'. v0.81.0.11: - Fix 'ta reload' at console. - Remove 'resident delete' from the help menu as it's replaced by '/ta delete'. v0.81.0.12: - Fix prevention of villager breeding. v0.81.0.13: - Prevent attempting to add Null if they user has removed all perms from a townyperms section. - Be sure we save a town's data if it's the last to leave a nation (causing the nation to be deleted). v0.81.0.14: - Fix town and nation withdraws to follow permissions. v0.81.0.15: - Prevent a NPE if using '/res' on an invalid player name. - Changes to the Town Board are now saved correctly. v0.81.0.16: - Added '/town ranklist' command to display all residents holding ranks in your town. v0.81.0.17: - Added missing permission for the new '/town ranklist' command. v0.81.0.18: - '/Nation rank remove' now correctly removed nation ranks not town ranks. v0.81.0.19: - Fixed plot claim message to correctly indicate success/failure. - Added a manual flag on each town allowing a server owner to set a town to disable ALL PvP (adminDisabledPvP). v0.81.0.20: - Fix SQL table updating for the new pvp field. v0.81.0.21: - Embassy plots now charge the correct Plot Tax. - Better handling of stale or dead connections for SQL. v0.81.0.22: - Fix town limit code. - Prevent Shears and other items uses on Entities (sheep) if no permissions. - Removed '/Towny top money' command. Use your Eco plugin to perform this action. - '/town add {name}' now correctly displays the players current town if they are already in one. - All payments into a Town or Nations bank now observe the Bank caps (if enabled). - Fix '/towny prices' so it now shows Taxes instead of Upkeep for Towns/Nations. - Added plot type prices and taxes to '/towny prices'. v0.82.0.0: - Release for bukkit 1.3.2-R1.0 #2377 v0.82.0.1: - Add support for Wither explosion protection. - Add protection for Hanging object protection (originally only paintings). - Update minimum CraftBukkit version to #2459 (MC 1.4.4). v0.82.0.2: - Prevent players with no build permissions from rotating item frames. - Stop throwing NPE's on '/ta unclaim x'. - Correctly select townblocks to unclaim when using '/ta unclaim x' v0.82.0.3: - Fix Ender peral teleports into protected areas. - Protect Hanging items from explosions per plot settings. - Prevent monsters breaking frames unless explosions are enabled. - attach PlayerMoveEvent to its related PlayerMoveChunkEvent (andre) v0.82.0.4: - Fix outpost spawns to correctly use the outpost spawn permission when using no outpost number. v0.82.0.5: - Ignore depreciated material.Door in Bukkit. - Update for altered Async task management in Bukkit. - Update minimum CraftBukkit version to #2543 (1.4.5-R1.0). v0.82.0.6: - Fix town and outpost claiming to use the correct permission child nodes. - Add missing getHandlersList() to Towny events. - '/town leave' now triggers a TownRemoveResidentEvent. v0.82.0.7: - Resident purges and admin deletion of residents now trigger a TownRemoveResidentEvent. - Moved the TownAddResidentEvent to the Town class so it is always triggered. - Town status now shows all player ranks, not just assistants (for testing to see if it's too much spam). - Players with no destroy perms for crops/soil can no longer trample even if the feature is disabled. - Added cancellable mob-removal event. - Added Shade's Closed economy system. You can now define an account in the config where any deleted money goes (needs serious testing). - Synchronize on playersAttachment so we don't push new perms to bukkit causing a ConcurrentModificationException. v0.82.0.8: - Added events for towns leaving and joining nations. - Allow protection of Pictures, Item frames, Minecarts, TNT carts and Storage carts seperately. v0.82.0.9: - Fix saving a change of plot type. v0.82.1.0: - Update minimum CraftBukkit version to #2602. - Update for Bukkit API changes associated with dye Colour. - Release. v0.82.1.1: - Added new events for other plugins to utilize - DeleteNationEvent, DeleteTownEvent, NewNationEvent, NewTownEvent, RenameNationEvent, RenameTownEvent. v0.82.1.2: - Better directory/file handling when using nested world folders. - Fix '/nation ?' to show the new rank command instead of the old assistant one. - Add a config toggle to disable creatures triggering stone pressure plates. v0.82.1.3: - Update townyperms upon a '/ta reload'. v0.82.1.4: - Move stone pressure plate protection to the 'block/item/mob protection' section of the config. v0.82.1.5: - Added TownClaim and Unclaim events for plugins to utilise. v0.82.1.6: - Added a hook to the Town object for other plugins to foce PvP on in a town 'setAdminEnabledPVP(true/false)' This setting does not save on shutdown/restart adn can not be set via any configuration files. It is solely for War plugins to gain control over a towns PvP setting. v0.82.1.7: - Make wild plots use the relevant worlds 'unclaimed_zone_ignore' settings. v0.82.1.8: - Prevent '/res toggle spy' bypassing the perm check for 'towny.chat.spy' permission. v0.82.1.9: - Change the tests on emptying buckets so we actually test the bucket we are emptying as well as the bucket we end up with. To fill a water bucket in the wild the player requires... - towny.wild.item_use.326 To empty a water bucket in the wild the player requires... - towny.wild.item_use.326 - towny.wild.item_use.325 - Update the nations data in SQL when renaming towns. v0.82.1.10: - Remove assitant override for town perms build/break. Thes should now only belong to the town Mayor. Assistant is just another rank. v0.82.1.11: - Move the BlockPhysics listener to it's own class so we don't register it if it's not needed. - Allow protection of hopper minecarts from being right clicked. v0.82.1.12: - Attempt to load town data even if there is a resident listed who is in another town (flatfile manual editing of files can cause this). - Minor english.yml fixes. v0.82.1.13: - Ad a PlotClear event. v0.82.1.14: - Trap NPE's caused by Spigot unloading a world yet still reporting the world in the world list. - Update to only work with CB #2771+ (craftbukkit-1.5.2-R0.1). - Add new block Ids to the switch/item protection lists. - Added a 'using_towny' setting to the 'Default new world settings' of the config. You can now set Towny to default to dsiabled in new worlds. - Fix Minecart protection so it works in towns again. - Minecart place/break is covered under Item_use nodes in the config 'block/item/mob protection'. - Minecart use is covered under switch_ids in the config 'block/item/mob protection'. - PvP prevention no longer prevents you harming yourself and no longer stops Ender pearl damage. - Catch ALL exceptions when deleting a Town/Nation so any economy errors will not prevent them being deleted. - Added a confirmation message to the admin purge command. - Added a confirmation message to the town delete command. - Added Town and Wilderness PvP entries in the 'Town Notifications' section of the config. You can now disable or customize the PVP message when moving between plots. - Add ability to limit outposts. Permissions info/option node based 'towny_maxoutposts' (TomSki). - Added a '/townyadmin toggle npc [resident]' command to set/reset the players exemption from tax. v0.82.1.15: - When a player leaves or is kicked from a town they will no longer lose their plots if they are of the Embassy type. - Nomads can now purchase Embassy plots, IF they have the plot claim permissions. - Fixed plot claim to no longer say successful when no plots are claimed. v0.83.0.0: - Release. v0.83.0.1: - Change 'TNTPrimed' in the config to 'PrimedTNT'. This fixes TNT damage not being regen'd in the wilderness. (You will need to update this change in your world data files too) v0.84.0.0: - Stop Item_use perms overriding Switch perms. - Regen health in town only upto the maximum (allows for modded health levels). - Towny will now always try to run no matter what version of CraftBukkit you are running. Instead of disabling it will output a warning message. v0.84.0.1: - Allow players in vehicles to activate pressure plates if they are permitted. - Fix possible error when a picture is removed by a projectile. v0.84.0.2: - Allow negative upkeep on nations. v0.84.0.3: - Change health regen to implement Bukkits new method for health measurement. v0.84.0.4: - Zero Economy accounts when renaming/deleting Towns/Nation as Vault doesn't support deleting them. v0.84.0.5: - Minor performace changes to plot regen code. - Add TownyPermissionSource implementation that uses Vault Chat API (ZerothAngel). v0.84.0.6: - Fix permission check to use nation.kick command. - Grammar fix in english.yml v0.84.0.7: - Incremental price change for bonus plots (by Slind). v0.84.0.8: - Exclude NPC's from all Tax and upkeep checks. - Update to dev Bukkit 1.7.2 - Temporary fix for ItemFrames and Minecart protection (need to rewrite major code to implement the new block naming system). To protect ItemFrames from right click in town add id 389 to the Switch list. To prevent/allow breaking and emptying deny/grant the perm for 'towny.wild.destroy.389' or relevant town perm. For other items use the following codes... Painting = 321 StorageMinecart = 342 HopperMinecart = 408 PoweredMinecart = 343 (furnace) RideableMinecart = 328 v0.84.0.9: - Fix negative nation upkeep problems when using Vault. v0.84.0.10: - Force shoptax, plottax and embassytax to obey the max tax setting in the config. v0.84.0.11: - Add config setting to restrict beduse to personally-owned plots only. Found in Resident Settings @ Deny_Bed_Use. - If deny_bed_use is true and town_respawn is true, a player will respawn at their bed if there is a bed spawn set. - Added new permission node: towny.command.resident.spawn - Allows players to use /resident spawn command. - Added new command: /resident spawn - If deny_bed_use: true and player has a current bed spawn, command will teleport player to their bed. Behaves according to town spawn command's costs and rules. - Added cancellable DisallowedPVPEvent. v0.84.0.12: - Fix a bug where you could create new towns in unclaimable worlds. v0.84.0.13: - Expand GroupManager/PEX/bPerms and any other Permission plugin recognised by Vault to handle towny_maxplots.X as a valid permission node. - Add tab Auto Complete on all commands for Town/Nation names. v0.84.0.14: - Added a Towny permission node 'towny.tax_exempt'. Grant this permisison to any rank you do not want to pay taxes. ** ONLY works in TownyPerms **. Will not work in external permission plugins. WARNING: Mayors without this permission will now be taxed along with the rest. - Added a command for admins to be able to change a nations capital. Town to be set must already be a member of the nation. /ta set capital [town name] - Added a command '/town reslist' to obtain a FULL list of all residents in a town. - Added new permission node for town plot management. 'towny.command.plot.asmayor' - grant this to any ranks you want to have the ability to... reclaim plots from players for the town. Toggle perms and plot settings on any plot in the town. Put plots up for sale and take them down again. - Added protected Mobs setting for town animal protection (coaster3000). - Hide players from '/res list' Who can't be seen (graywolf336). - Fix an issue with public town spawns. - Added settings to make economy daily tax timer async or synced (coaster3000). - Adding the ability to change the Economy prefix from the config (dadealus). - Added minimal claim distance from other town plots (coaster3000). v0.85.0.0: - Fix '/res friend add/remove'. - Update to Beta CraftBukkit 1.7.2-R0.3 (3020) - Add command '/plot set name'. v0.85.0.1: - Update SQL code to prevent sql injection and handle foreign characters. ****** USE WITH CAUTION. BACKUP ANY DATABSE FIRST ***** - Set SQL to use UTF-8 by default. v0.85.0.2: - Added a setting in the config for 'potion_types' to the 'block/item/mob protection' section. This section allows you to specify any potion effects you want blocked when preventing PvP. - Move Economy account prefixes to the correct section of the config. - Fix plot naming to not break plot permissions. - Add conformation on setting a plot name. - Display _ characters in plot names as spaces. - Add Resident names to auto completion. v0.85.0.3: - Reduce storage size of x and z townblock coordinate when usign SQL. v0.85.0.4: - Config.yml and World defaults updated (auto converts the first time you startup)... Update PlotManagementDeleteIds to use Material Names instead of id numbers. Update unclaimedZoneIgnoreIds to use Material Names instead of id numbers. Update plotManagementIgnoreIds to use Material Names instead of id numbers. - Townblocks no longer need to be re-saved unless direct plot permissions change. - Townblock data now contains all relevant information. Removes duplicate entries in resident and town data and speeds up loading/saving. v0.85.0.5: - Revert plugin.yml change to fix CI build version. v0.85.0.6: - Only save plot permissions if they have been altered. v0.85.0.7: - Finally fix build version on CI. v0.85.0.8: - Correct an error when attempting to get Townblock permissions on an unclaimed plot. v0.85.0.9: - Fix Potion use checking (enums are not classes, duh!). v0.85.0.10: - Fix plot snapshots so they save correctly (incompatible with older snapshot files). - Fix chest facing when regenerating due to explosion regen. - Add an admin tool (default is a Clay Brick) for server admins to query blocks and entities. Helpful when configuring the Towny settings. - ** WARNING ** Changed method of obtaining Exploding entity names. Be sure to update your config.yml for the following. PrimedTNT - has become - TNTPrimed MinecartTNT - has become - ExplosiveMinecart v0.85.0.11: - Add NPC and Snowman to the protected list of entities in a town. - Properly format the message when setting a plot name. - Fix plot notification spam. v0.85.0.12: - Plot names can now be set and display for Town owned plots. - Fix console spam on plot change event. v0.85.0.13: - Fix SQL Update error. v0.85.0.14: - Use the right damn variable when I fix something. - Fix townblock owner tests to prevent people from other towns setting plot perms. - Fix SQL prepared statement code (BIG thanks to JamieKG for all his testing). v0.85.0.15: - Add a debug to world/town/nation loading to better show if something is missing in the data files. v0.85.0.16 - Revert plot perm changes and no longer delete any townblock data unless it's unclaimed. v0.85.0.17: - Fix plot perms on load when using the new TownBlock save data. v0.85.0.18: - Revert townblock perm setting on data load. v0.85.0.18: - Fix custom plot perms being overwritten by town when updating. v0.85.0.19: - Decrease warning level for the message at startup when using custom CraftBukkit/Spout builds. - Fix SQL saving extra characters on the end of some data. - Fix FlatFiles from appending an extra comma. - Only attempt to load townBlocks for older databases. - Add missing field saving on TownBlocks to SQL. - Only delete old files if using flatfile for saving or loading. v0.85.0.20: - Move all SQL Saving to an Async task. - Move flatfile data saving (excluding regen and plot images) to an Async task. v0.85.0.21: - Retain backwards compatability for CraftBukkit-1.6.4-R2.0 (#2918). (Likely the last version to be compatible with 1.6.4 as the UUID changes coming will be 1.7.2+) v0.85.0.22: - Restore support for old plot-block-data. v0.85.0.23: - Fix VER for plot-block-data so it doesn't throw a divide by zero error on old plot data. v0.85.0.24: - Add missing loadTownBlockList() for sql. v0.85.0.25: - Support old sql databases still using a comma delimiter. v0.85.0.26: - Fix Wilds and Unclaimd block Ignore settings. v0.85.0.27: - Auto convert remaining Config settings which still use item Ids to use Material names. v0.85.0.28: - Only auto complete for resident names in /plot and /resident commands. v0.85.0.29: - Added two new commands... '/townyadmin town [townname] spawn' - Admin command to spawn at at town spawn. '/townyadmin town [townname] outpost #' - Admin command to spawn at any towns outposts. v0.85.0.30: - newTown, newNation, renameTown and renameNation are now thread safe to prevent players spamming commands to corrupt data. v0.85.0.31: - Fix a town removal bug if a mayor doesn't have the permission 'towny.tax_exempt' and is the last person to be removed from a town during a tax cycle. v0.85.0.32: - Fix Resident loading for towns using SQL data. v0.85.0.33: - Allow world creation when loading the TownBlockList to account for mods which do not report their world at startup. v0.85.0.34: - Give a valid message when trying to '/town spawn' to an invalid town. - Set default plot price for SQL databases to -1. Fixes plots being set for sale when updating. v0.85.0.35: - Fix SQL Table update query for plot price too. v0.85.0.36: - Fix '/town spawn [town]'. v0.85.0.37: - Fix resident modes so there is no longer an empty string set resulting in a stray comma when displaying the modes. - Add a help page to '/res toggle'. - Add a residents ranks to the '/res' status page. - Keep a players saturation level (no hunger) if regen in town is enabled. - Set the Town Spawn when the Homeblock is moved via '/town set homeblock'. - Added a new set of permissions to allow special residents permissions on town owned plots.. 'towny.claimed.townowned.*' : User is able to edit specified/all block types in their towns owned plots (Town only, not resident owned). 'towny.claimed.townowned.build.[block id]' 'towny.claimed.townowned.destroy.[block id]' : (handy to allow clearing of snow '78' on town owned roads/plots) 'towny.claimed.townowned.switch.[block id]' 'towny.claimed.townowned.item_use.[block id]' v0.86.0.0: - Added an example town helper rank in TownyPerms to demonstrate the new town owned permission. - Release. v0.86.0.1: - Move more Bukkit calls to the BukkitTools class. Code cleaning and organising. - Fix Preventing the setting of bed respawn in the wilderness without permission. v0.86.0.2: - Fix renaming towns so they no longer forget their townblocks part way through updating. - Revert UUID implementation to remain backward compatible (for now). - Fix moving deleted files to the 'deleted' folder when a file of that name already exists. v0.86.1.0: - Release. v0.86.1.1: - Add 'LargeFireball' to the wild revert explosion entities. - Added a TownyWorld command for setting the wilderness regen entities. '/townyworld set wildregen Creeper,EnderCrystal,EnderDragon,Fireball,SmallFireball,LargeFireball,TNTPrimed,ExplosiveMinecart' - Fix sqlite implementation so it actually works. v0.86.1.2: - Update last default entries in the config under 'block/item/mob protection' to use material types instead of Ids. - Better handle unknown and modded item Id's in update/conversion. v0.86.1.3: - Plot claim can no longer be abused to avoid the bank cap (if set). v0.86.1.4: - Using '/plot unclaim' now sets the plot for sale at the correct price for it's type. v0.87.0.0: - Added metrics. - Release. v0.87.0.1: - Fix displaying the changelog update in console. - Add debug message on errors saving data. - Fix a bug where a server restart after a resident leaves a town results in him retaining his old town plots. v0.87.0.2: - Git pull requests added. v0.87.0.3: - Added and expanded upon PriceDeath. Adds ability to do fixed or percentage penalties to dying. These can affect personal, town, nation banks and be configured to be PVP only or from monster-deaths. - Added Inn plot types. - Prevent starting an Event War if using_economy: false in the config. v0.87.0.4: - Prevent toggling chat spy without the relevant permission node (towny.chat.spy). - Prevent lost funds on purchasing bonus plots. v0.87.0.5: - Add missing refund code to the Eco object (coaster3000). v0.88.0.0: - Release. v0.88.0.1: - Ensure Database updates generated from async chat do not jump the queue and cause data corruption. v0.88.0.2: - Change from 'INSERT' to 'REPLACE INTO' to prevent any SQL hiccups. v0.88.0.3: - Fix ignored result of String.replaceAll(). - Grammar fixes. v0.89.0.0: - Update bukkit.jar to 1.8 version. - Fix/remove getOnlinePlayers deprecations. - Fix items on ArmorStands not being protected. - Added armorstands to default config for protections. - Old configs need to have ArmorStand added to the mob_types: in the config. - Old configs need to have Armor_Stand added to the item_use_ids: in the config. v0.89.0.1: - Fix config.yml growing with blank spaces and #'s. - If your config has been growing do the following: - Stop your server and add the new Towny.jar. - Start the server, let it load completely. - Open the Towny config.yml and remove any empty lines and lines beginning with # at the top of the file. - Save the config.yml - use /ta reload to reload the config. - If this process does not work you can manually add 2 spaces before any line directly beginning with a # symbol, (replace "#..." with " #...") v0.89.0.2: - Fix ArmorStands being taken from by outsiders. v0.89.1.0: - Update to release. v0.89.2.0: - Fix ArmorStands not being protected from projectiles. v0.89.2.1: - Fix price_death_nation paying out 100% of a nation's bank even when set less than 100%. v0.89.2.2: - Courtesy of backcab ( http://brierieserver.co.uk/ ) we have the following new commands: - Added /ta resident {oldname} rename {newname} - This renames a player's account to a new name. Useful for players who've changed their minecraft account name. - Added /ta resident {name} - This command can be used from console to look up a resident's information, similar to /ta town {name}. v0.89.2.3: - Arena plots no longer allow for PVP death payments. v0.89.2.4: - Check if a plot name contains invalid characters when using /plot set name NAME. v0.89.2.5: - Plot prices are now capped at 1000000 in order to keep mysql databases from storing exponential numbers and crashing. v0.89.2.6: - Fix /ta resident rename command to also alter friends list. Care of backcab. v0.89.2.7: - Fix renaming players who did not have a town. v0.89.2.8: - Fix removing plot names using /plot set name. v0.89.2.9: - Protect Armour Stands from Wither Skulls and the initial Wither explosion. v0.89.2.10: - Fix min/max distance from towns so they only check in the same world.