Description: This is a very simple plugin that allows you to collect taxes on player balances and Towny Nation and Town balances. How often taxes are collected is configurable. Create different tax brackets for primary groups. Has bypass permissions to bypass each type of tax.
Commands: taxes - Displays command help for the Taxes plugin.
aliases: [tax, taxes-help, tax-help]
permission: taxes.player.help
taxes-collect - Collects taxes for the specified tax. This command ignores whether the tax is enabled or not. Get tax names from the /tax-listall command.
aliases: [tax-collect]
permission: taxes.admin.collect
taxes-collectall - Collects taxes for the all the taxes. This command ignores whether the tax is enabled or not.
aliases: [tax-collectall]
permission: taxes.admin.collectall
taxes-list - List all the applicable taxes by name for the player.
aliases: [tax-list]
permission: taxes.player.list
taxes-listall - List all taxes in the config by name. This is used for admins.
aliases: [tax-listall]
permission: taxes.admin.listall
taxes-info - Displays detailed information for the specified tax name for the player. Get tax names from the /tax-list command.
aliases: [tax-info]
permission: taxes.player.info
taxes-infoall - Displays all the detailed information for the specified tax name. This is for admins to view config settings in-game. Get tax names from the /tax-listall command.
aliases: [tax-infoall]
permission: taxes.admin.infoall
taxes-reload - Reloads the the Taxes configuration data.
aliases: [tax-reload]
permission: taxes.admin.reload
Permissions:
Code (Text):
NOTE: The bypass perms are not given to OP.
This is incase you still want OPs to be taxed.
These bypass perms have to be given out to groups/players to work.
taxes.*:
description: Gives all permissions for this plugin.
default: op
children:
taxes.admin: true
taxes.player: true
taxes.player:
description: Gives access to all Player permissions.
default: op
children:
taxes.player.help: true
taxes.player.list: true
taxes.player.info: true
taxes.admin:
description: Gives access to all Admin permissions.
default: op
children:
taxes.admin.reload: true
taxes.admin.collect: true
taxes.admin.collectall: true
taxes.admin.listall: true
taxes.admin.infoall: true
taxes.bypass.*:
description: Gives access to all bypass permissions.
default: false
children:
taxes.bypass.playerbalancetax: true
taxes.bypass.nationtax: true
taxes.bypass.towntax: true
taxes.player.help:
description: Give access to the /taxes command.
default: op
taxes.player.list:
description: Give access to the /taxes-list command.
default: op
taxes.player.info:
description: Give access to the /taxes-info command.
default: op
taxes.admin.reload:
description: Give access to the /taxes-reload command.
default: op
taxes.admin.collect:
description: Give access to the /taxes-collect command.
default: op
taxes.admin.collectall:
description: Give access to the /taxes-collectall command.
default: op
taxes.admin.listall:
description: Give access to the /taxes-listall command.
default: op
taxes.admin.infoall:
description: Give access to the /taxes-infoall command.
default: op
taxes.bypass.playerbalancetax:
description: Player Balance Tax will not be collected from players with this permission.
default: false
taxes.bypass.nationtax:
description: Towny Nation Tax will not be collected from players with this permission.
default: false
taxes.bypass.towntax:
description: Towny Town Tax will not be collected from players with this permission.
default: false
Towny - Only if you enable collecting taxes from Towny Nations and Towns.
Config Files: config.yml - configure taxes and tax collection.
language.yml - configure plugin messages.
data.yml - used to store runtime data. No Touchie!
defaultConfig.yml:
Code (Text):
# ==================================================================================================
# This config allows you to configure how often and how much taxes are
# collected from various balances like Player, Towny, etc.
# ==================================================================================================
# Taxes - Here are the balance hooks that this plugin can currently tax.
# Additional balances hooks cannot just be added.
# If you want additional balances hooks, please submit a request to the
# author of the plugin.
Taxes:
# Tax on player balances
PlayerBalanceTax:
# If enabled, this tax will be collected. Set to false to turn off this tax.
Enabled: true
# TaxFrequency - How often to taxes are collected for the specified tax.
# It is specified as a number and units like 2w means 2 weeks.
# Units: s=seconds, m=minutes, h=hours, d=days, w=weeks
TaxFrequency: 1d
# TaxDepositAccount - Enable this option and set the name if you want the taxes
# collected to be placed in the specified account.
TaxDepositAccount:
Enabled: false
Name: towny_server
# TaxCollection - Specify the collection to be used to determine how much
# taxes to be collected based on balance amounts. This must
# be one of the names under Collections in this config.
TaxCollection: OnlyCollection
# Batch processing to reduce lag.
BatchProcessing:
# Set to true to enable batch processing only if you are experiencing lag.
Enabled: false
# How many players to process in each batch. Decrease to decrease lag.
Size: 500
# Delay between each batch of players in Ticks. 20 Ticks = 1 Second. Increase to decrease lag.
Delay: 20
# Tax on Towny Nation accounts.
NationTax:
Enabled: false
TaxFrequency: 1d
TaxDepositAccount:
Enabled: false
Name: towny_server
TaxCollection: OnlyCollection
BatchProcessing:
# Set to true to enable batch processing only if you are experiencing lag.
Enabled: false
# How many nations to process in each batch. Decrease to decrease lag.
Size: 500
# Delay between each batch of nations in Ticks. 20 Ticks = 1 Second. Increase to decrease lag.
Delay: 20
# Tax on Towny Town accounts.
TownTax:
Enabled: false
TaxFrequency: 1d
TaxDepositAccount:
Enabled: false
Name: towny_server
TaxCollection: OnlyCollection
BatchProcessing:
# Set to true to enable batch processing only if you are experiencing lag.
Enabled: false
# How many towns to process in each batch. Decrease to decrease lag.
Size: 500
# Delay between each batch of towns in Ticks. 20 Ticks = 1 Second. Increase to decrease lag.
Delay: 20
# TaxCollections - Each collection specifies a group of tax brackets. There must be at
# least one. The names for the collections can be anything you want
# but must be unique. You can define as many collections as you want.
# You can use the same collection for multiple taxes above.
# Remember to put the collection name in the TaxCollection field above.
TaxCollections:
# Tax collection name. Can be any name you want. Tax Collection names must be unique.
OnlyCollectionUsed:
# BracketGroup - Allows tax brackets to be specified for different groups/ranks.
# This line specifiess the bracket group name. Bracket
# Group names can be anything you want but needs to be unique for
# each collection.
StaffOnly:
# Groups: Specifies the list of groups/ranks that this group of brackets applies.
# The groups/ranks only applies to the player's Primary Group.
# Groups also applies to Towny Taxes. The Primary Group of the Nation
# and Town owners is used to determine taxes for the nation and town.
Groups:
- Mod
- Admin
- Owner
# TaxBrackets - Define the tax brackets. Tax Bracket names can be anything you want.
# You can define as many tax brackets as you want.
# Must put the tax brackets in order from lowest to highest MaxBalance.
# Must use -1 for the MaxBalance of the final tax bracket.
TaxBrackets:
# Tax bracket name. Can be anything you want. Must be unique for each TaxBrackets
# section.
Poor:
# MaxBalance - The highest balance player a can have and still be in
# the specified tax group.
# Use a -1 for the MaxBalance of the final tax group to specify
# any max balance above the previous group's MaxBalance.
MaxBalance: 100000.00
# TaxType - Type of tax. Can be either FIXED or PERCENT in all caps.
# FIXED - TaxAmount specifies a fixed amount that is collected
# for the tax.
# PERCENT - TaxAmount specifies a percent of the current balance
# that is collected for tax.
TaxType: FIXED
# TaxAmount - Amount of tax collected each tax time. Can be a fixed ammount or
# percent based on the setting for TaxType.
TaxAmount: 0.0
MiddleClass:
MaxBalance: 500000.00
TaxType: PERCENT
TaxAmount: 5.0
Rich:
MaxBalance: -1
TaxType: PERCENT
TaxAmount: 10.0
VipsOnly:
Groups:
- Vip
- Vip1
- Vip2
TaxBrackets:
NoTaxForVips:
MaxBalance: -1
TaxType: FIXED
TaxAmount: 0.0
AllButVipsStaff:
# Groups: [] - Specifies all Primary Groups that are not included in
# any other bracket groups for this collection.
Groups: []
TaxBrackets:
Poor:
MaxBalance: 100000.00
TaxType: PERCENT
TaxAmount: 0.0
MiddleClass:
MaxBalance: 500000.00
TaxType: PERCENT
TaxAmount: 10.0
Rich:
MaxBalance: -1
TaxType: PERCENT
TaxAmount: 20.0
# Don't care about groups? Then specify a collection with 1 bracket group
# with Groups set to []. Like below. Remember to but the collection name
# NoGroupCollection in the TaxCollection field for the taxes above.
NoGroupCollection:
BracketGroupForEveryone:
Groups: []
TaxBrackets:
Poor:
MaxBalance: 100000.00
TaxType: PERCENT
TaxAmount: 0.0
MiddleClass:
MaxBalance: 500000.00
TaxType: PERCENT
TaxAmount: 10.0
Rich:
MaxBalance: -1
TaxType: PERCENT
TaxAmount: 20.0
language.yml:
Code (Text):
# ==================================================================================================
#
# Place Holders (Tax Collection Messages Only):
# ----------------------------------------------------
# {PRE_TAX_BALANCE} - The balance before taxes were collected.
# {POST_TAX_BALANCE} - The balance after taxes were collected.
# {TAX_AMOUNT_TAXED} - The amount collected for a tax.
#
#
# Player Place Holders:
# ---------------------
# {PLAYER_REAL_NAME} - The player's real name.
# {PLAYER_DISPLAY_NAME} - The player's nickname if they have one. Otherwise real name is used.
# {PLAYER_BALANCE} - The player's current balance.
#
#
# Tax Place Holders:
# ------------------
# {TAX_NAME} - Name of the tax in the config.yml file.
# {TAX_ENABLED} - Evaluates to Yes if tax is enabled, No otherwise.
# {TAX_FREQUENCY} - How often tax is collected. Example: 1 day
# {TAX_DEPOSIT_ENABLED} - Evaluates to Yes if Tax Deposit Account is enabled, No otherwise.
# {TAX_DEPOSIT_ACCOUNT} - Name of the Tax Deposit Account where taxes are deposited.
# {TAX_COLLECTION_NAME} - Name of the tax collection.
# {TAX_NEXT_COLLECTION_TIME} - Date and Time the tax will be collected again.
# {TAX_NAME_LIST} - Comma seperated list of valid tax names.
#
#
# Tax Collections, Bracket Groups, and Brackets Place Holders:
# ------------------------------------------------------------
# {TAX_COLLECTION_NAME} - Name of the tax collection.
# {TAX_BRACKET_GROUP_NAME} - Name of the tax bracket group.
# {TAX_BRACKET_GROUP_GROUPS} - The list of groups for a tax bracket group.
# {TAX_BRACKET_NAME} - Name of the tax bracket
# {TAX_BRACKET_MIN} - Minimum balance for the tax bracket.
# {TAX_BRACKET_MAX} - Maximum balance for the tax bracket.
# {TAX_BRACKET_AMOUNT} - The amount of tax to collect. Either a $ or % amount.
# {TAX_BRACKET_AMOUNT_TYPE} - The type of tax collected. Either PERCENT or FIXED.
#
# NOTE: If a place holder is not replaced in a message, the chances are that that
# place holder is a valid place holder for that message.
#
# Messages:
# ---------
# Messages can be multiline or single line. Messages support the place holders listed
# above and color codes. Each message can be disabled by setting Enabled to fale.
#
# Multiline example:
# Message:
# Enabled: true
# Contents:
# - 'Line 1'
# - 'Line 2'
# - 'Line 3'
#
# Singleline example:
# Message:
# Enabled: true
# Contents:
# - 'Entire Message'
#
#
# Some messages are complicated and need to be broken up into multiple sub-messages. Any
# message sub-message that starts with the word 'Each' means that it can be used multiple
# times in the message like in a list. These sub-messages can be single or multiple lines.
# Sub-messages can be disabled by setting them to []. To disable the entire message, it is
# best to set Enabled to false.
#
# Example:
# Message:
# Enabled: true
# Contents:
# Header:
# - 'Line 1'
# EachLine:
# - 'Line 1'
# - 'Line 2'
# - 'Line 3'
# Footer:
# - 'Line 1'
#
# Disable sub-message example (disable footer sub-message):
# Message:
# Enabled: true
# Contents:
# Header:
# - 'Line 1'
# EachLine:
# - 'Line 1'
# - 'Line 2'
# - 'Line 3'
# Footer: []
#
# Defined Messages:
# -----------------
# PlayerTaxCollected - Message that is displayed to the player when a tax is collected.
# This same message is used for all taxes.
#
# BroadcastTaxCollectionStart - Broadcast message that is displayed to all players when a tax
# collection is about to start.
#
# BroadcastTaxCollectionComplete - Broadcast message that is displayed to all players when a
# tax collection has completed.
#
# PlayerTaxList - Message that is displayed when the /taxes-list command is executed.
# Header - Header/title for the message. It is only displayed once.
# EachTax - This message is displayed once for each tax that is applicable for the
# command that was executed.
# Footer - This is the footer of the message. It is only displayed once.
#
#
# PlayerTaxListAll - Message that is displayed when the /taxes-listall command is executed.
# Header - Header/title for the message. It is only displayed once.
# EachTax - This message is displayed once for each tax that is applicable for the
# command that was executed.
# Footer - This is the footer of the message. It is only displayed once.
#
#
# PlayerTaxInfo - Message for the /taxes-info <TaxName> command. Displays the details of the
# tax specified by <TaxName> for the player that executed the command in-game.
# This message only displays the Tax Bracket info that is applicable to the
# to the player at the moment the /taxes-info command was executed.
#
# PlayerTaxInfoAll - Message for the /taxes-infoall <TaxName> command. Displays the complete
# config details of the tax specified by <TaxName>.
# This message displays all of the Tax Bracket Groups and all of the
# Tax Brackets that are configured for the specified tax.
# TaxInfo - Display the tax level info. This is only displayed once.
# EachTaxBracketGroup - This is the Tax Bracket Group info. It is displayed for
# each Tax Bracket Group in the specified tax.
# EachTaxBracket - This is the Tax Bracket info. It is displayed for each Tax Bracket
# of each Tax Bracket Group.
# Footer - This is the footer of the message. It is only displayed once.
#
# PlayerInvalidTaxName - Displayed when the player runs a command that requires a tax name
# and the tax name is not valid.
#
# ==================================================================================================
Info Command to display tax info to the players - DONE
Bypass permissions - DONE
Tax Brackets by player's primary group - DONE
Allow taxes to be deposited in a specified account - DONE
Command to force tax collection - DONE
Command to list taxes applicable to player - DONE
Command to list all taxes - DONE
Suggestions?
Got an issues or question? Please post issues and questions in the discussion section and I will address them in a timely manner. Please provide me with an oppertunity to address issues and questions in a timely manner before posting a bad review. If I fail to address the issue or question in a timely manner, feel free to blast me all you want in a review. I will blast myself in your review as well
Got a suggestion? Feel free to post suggestions in any manner you like. A review, private message, or in the discussion sections are all acceptable along with any other manner inwhich you can come up with to get my attention.