Highly configurable Minecraft Protection land management and political plugin that allows for extreme diversity of upgrade costs, player ranks and more! Designed and used by
Herocraftonline.com for Minecraft Servers!
The goal of Minecraft Townships is to allow for players to control biomes that grant unique materials to promote trade with other townships to barter for materials they cannot produce to upgrade.
Townships have the ability to go to war to gain materials they cannot produce as well, defending towns can choose to "sue for peace" which pays them in currency to stop the war. (currently in development/updating)
Full language file support!
Chunk Based Claiming and Ownership
Advanced Plot Management based on WorldGuard
Colored Name Tags for Townships / Politics
Unique Biome Materials
Wild / Town flags
Diverse Rank System with Custom Node Grants
Level Material/Currency Upgrade Cost
Server Upkeep
Tax (Flat/%)
Physical Bank (Items)
Virtual Bank (Currency)
Kingdom Support
Individual Town Chat (/tc <msg>)
Castle Conquest KOTH / DOMINATION points
Integration with Heroes Premium
Economy/Vault Support.
GUI Menus for toggles, upgrades, etc.
More Flag Toggles
Kingdom Fixes
Mayor Set Sellable Plots
Additional Addons
Land regen when claim fails
Political System that allows for WAR/PEACE time
Each level the server admin can set what townships get every level, this can range from more bank space, to more population counts, less/more server upkeep taxes, more chunk claims and so forth.
Graveyard - Lets a mayor set a respawn point for its town, overriding respawn points
Harvester - allows the township to pull customized items from the biomes.
Required:
Vault
WorldGuard 6+
WorldEdit
Permissions
Config.yml
Code (Text):
version: 1 # the current config version
language: english.yml # the language file to use for messages
town_chat: true #whether players can use town chat
kingdom_chat: true #whether players can use kingdom chat
nameplate_colors: true #changes player nameplate colors based on town relations (uses scoreboards)
region_titles: true #whether to show a title (true) or a chat message (false) when entering/exiting a town region
township_protection:
allowResidentPlots: true #allows the mayor(s) to grant plots to citizens/guests of a town
distanceBetweenTowns: 5 #the minimum number of regions (chunks) that must be between towns for creation
plotCheckMaterial: 'Coal' #the name of a material which will be used as the plot checking tool
addons:
# BiomeHarvester - generates biome-based materials each Minecraft (in-game) noon using harvests.yml
harvester:
# whether this add-on is enabled by default for all towns
enabled: true
# if 'enabled: false', this sets whether the add-on is purchaseable with '/township buyaddon harvester'
canBuy: false
# if 'enabled: false' and 'canBuy: true', the price that this add-on can be purchased for
price: 100.0
# Graveyard - respawns dead players to a specified graveyard in the town
graveyard:
# whether this add-on is enabled by default for all towns
enabled: false
# if 'enabled: false', this sets whether the add-on is purchaseable with '/township buyaddon graveyard'
canBuy: true
# if 'enabled: false' and 'canBuy: true', the price that this add-on can be purchased for
price: 2500.0
daily_taxes:
# Enables taxes to be collected daily by town/nation
# If a town can't pay it's tax then it is kicked from the nation.
# if a resident can't pay his plot tax he loses his plot.
# if a resident can't pay his town tax then he is kicked from the town.
# if a town or nation fails to pay it's upkeep it is deleted.
enabled: true
# Maximum tax amount allowed when using flat taxes
max_tax_amount: 1000.0
# maximum tax percentage allowed when taxing citizens by percentages
max_tax_percent: 5
# The server's daily charge on each nation. If a nation fails to pay this upkeep
# all of it's member town are kicked and the Kingdom is removed.
price_kingdom_upkeep: 150.0
# The server's daily charge on each town. If a town fails to pay this upkeep
# all of it's residents are kicked and the town is removed.
price_town_upkeep: 100.0
# The defaults to use for town taxes
town_taxes:
# Whether or not to use percentages by default (if false, uses flat taxes)
percentage: true
# The default percentage or flat tax rate to use, depending on the above setting (if percentage, 0.0 to 100.0)
rate: 1.0
# The defaults to use for kingdom taxes
kingdom_taxes:
# Whether or not to use percentages by default (if false, uses flat taxes)
percentage: true
# The default percentage or flat tax rate to use, depending on the above setting (if percentage, 0.0 to 100.0)
rate: 1.0
banks:
# Maximum amount of money allowed in town bank
# Use 0 for no limit
town_bank_cap: 2500.0
# Set to true to allow withdrawls from town banks
town_allow_withdrawls: true
# Maximum amount of money allowed in nation bank
# Use 0 for no limit
nation_bank_cap: 10000.0
# Set to true to allow withdrawls from nation banks
nation_allow_withdrawls: true
politics:
# Toggles whether players can teleport to the spawn location of allies.
ally_spawns: true
# Base currency required to declare war on another town.
# This follows the formula: Base + (AtkLevel/DefLevel)*20 + (AtkChunks/DefChunks)*60 - DefPlayers + AtkLevel*50 + PastWars^5
war_declare: 100.0
# Maximum amount it can cost to declare war. 0 to disable the limit.
war_declare_max: 10000.0
# The amount to multiply the declare cost before giving it to the winner of the war.
# For example, if the war starts with the attacker paying 1500.0, then a 2.0 multiplier will give the winner 3000.0.
# If there is a tie, neither side will receive this money.
reward_multiplier: 2.0
# Base currency required to surrender a war.
# This follows the formula: Base + (SurrenderTownLevel / EnemyTownLevel * 200) - (PastWars * 10)
peace_sue: 0.0
# Minimum amount it can cost to surrender.
peace_sue_min: 100.0
# The time between when a war is declared and when it actually starts.
# Uses a Duration string (w[eek], d[ay], h[our], m[inute], s[econd])
war_warmup: 5m
# Time between messages that should be announced to both towns to inform them when the warmup ends and war begins.
# Uses a Duration string (w[eek], d[ay], h[our], m[inute], s[econd])
war_msg_interval: 1m
# Time that the war will last between towns.
# Uses a Duration string (w[eek], d[ay], h[our], m[inute], s[econd])
war_max_time: 1d
# Points required on either side to win the war.
war_max_points: 100
# Whether the towns involved should stop producing (e.g. harvests) during wartime.
economic_halt: true
# Time in minutes until a town can be declared upon after a war.
war_cooldown: 60
# Time in minutes until a town can be declared upon after being created.
war_cooldown_new: 60
# Points that will be given to either town for...
conflict:
# ...killing an enemy player.
enemy_kills: 5
# ...an enemy player dying.
enemy_loss: 3
# ...no enemies being online for an amount of time.
enemies_offline:
time: 15m
points: 5
global_town_settings:
default:
pvp: true
fire: false
explosion: false
mobs: false
#entity spawn reasons that are allowed to happen within the town when 'mobs' is disabled
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html
#can be effectively disabled by setting to 'allowed_spawns: []', without the quotes
allowed_spawns:
- custom
- breeding
plot:
overrides:
- build
- destroy
resident:
build: true
destroy: true
interact: true
ally:
build: false
destroy: false
interact: true
outsider:
build: false
destroy: false
interact: true
wild_settings:
pvp: true
fire: true
explosion: true
mobs: true
#entity spawn reasons that are allowed to happen in the wild when 'mobs' is disabled
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/entity/CreatureSpawnEvent.SpawnReason.html
allowed_spawns:
- breeding
- custom
build: true
destroy: true
interact: true
modify_chat:
# Maximum length of Town and Kingdom names.
max_name_length: 20
# Maximum length of titles and surnames.
max_title_length: 10
# Format to display the Town Chat in (%town% = town, %rank% = rank prefix (if any), %name% = player name, %msg% = the message)
town_chat_format: "[&2%town%&r]%rank%%name%&7: %msg%"
# Format to display the Kingdom Chat in (%kingdom% = kingdom, %town% = town, %rank% = rank prefix (if any), %name% = player name, %msg% = the message)
kingdom_chat_format: "[&2%kingdom%&r][&a%town%&r]%rank%%name%&7: %msg%"
day_timer:
# The number of hours in each "day". Should be a factor of 24 hours.
# You can configure for 12 hour days. Default is 24 hours.
# Uses a Duration string (w[eek], d[ay], h[our], m[inute], s[econd])
day_interval: 1d
# The time each "day", when taxes will be collected.
# MUST be less than day_interval. Default is 12h (midday).
# Uses a Duration string (w[eek], d[ay], h[our], m[inute], s[econd])
new_day_time: 12h
Permission Nodes
permissions:
townships.admin:
description: Gives access to Townships admin commands.
default: op
children:
townships.command.town.*: true
townships.command.kingdom.*: true
townships.claimed.*: true
townships.tax_exempt: true
townships.claimed.*:
description: User can build/destroy/interact in all towns.
default: false
children:
townships.claimed.townowned.build: true
townships.claimed.townowned.destroy: true
townships.claimed.townowned.interact: true
townships.claimed.owntown.*: true
townships.claimed.alltown.build: true
townships.claimed.alltown.destroy: true
townships.claimed.alltown.interact: true
townships.claimed.owntown.*:
description: User can build/destroy/interact in their own town.
default: false
children:
townships.claimed.owntown.build: true
townships.claimed.owntown.destroy: true
townships.claimed.owntown.interact: true
townships.command.kingdom.set.*:
description: User can access any of the kingdom set commands.
default: false
children:
townships.command.kingdom.set.king: true
townships.command.kingdom.set.capital: true
townships.command.kingdom.set.taxes: true
townships.command.kingdom.set.title: true
townships.command.kingdom.set.surname: true
townships.command.kingdom.set.tag: true
townships.command.kingdom.toggle.*:
description: User can toggle any available kingdom setting.
default: false
children:
townships.command.kingdom.toggle.neutral: true
townships.command.kingdom.toggle.taxpercent: true
townships.command.town.claim.outpost
townships.command.town.*:
description: User can access all town related commands.
default: false
children:
townships.command.town.here: true
townships.command.town.list: true
townships.command.town.new: true
townships.command.town.leave: true
townships.command.town.withdraw: true
townships.command.town.deposit: true
townships.command.town.rank: true
townships.command.town.ranklist: true
townships.command.town.reslist: true
townships.command.town.set.*: true
townships.command.town.buy: true
townships.command.town.toggle.*: true
townships.command.town.mayor: true
townships.command.town.disband: true
townships.command.town.join: true
townships.command.town.invite: true
townships.command.town.kick: true
townships.command.town.claim: true
townships.command.town.unclaim: true
townships.command.town.upgrade: true
townships.command.town.online: true
townships.command.town.plot.*: true
townships.command.town.map: true
#townships.command.town.spawn: true
townships.command.town.rename: true
townships.command.town.buyaddon: true
townships.command.town.addoncost: true
townships.command.town.plot.*:
description: User can access all town plot commands.
default: false
children:
townships.command.town.plot.create: true
townships.command.town.plot.delete: true
townships.command.town.plot.grant: true
townships.command.town.plot.info: true
townships.command.town.plot.list: true
townships.command.town.plot.revoke: true
townships.command.town.plot.override: true
townships.command.town.set.*:
description: User can access all town set commands.
default: false
children:
townships.command.town.set.board: true
townships.command.town.set.mayor: true
townships.command.town.set.homeblock: true
townships.command.town.set.spawn: true
townships.command.town.set.outpost: true
townships.command.town.set.perm: true
townships.command.town.set.taxes: true
townships.command.town.set.plottax: true
townships.command.town.set.shoptax: true
townships.command.town.set.embassytax: true
townships.command.town.set.plotprice: true
townships.command.town.set.shopprice: true
townships.command.town.set.embassyprice: true
townships.command.town.set.tag: true
townships.command.town.set.graveyard: true