RegionForSale 2.3 config.yml Project page

General information about this file

The file "config.yml" can be found in the plugin’s main folder, namely "plugins/RegionForSale/" and in every world-sub-folder ("plugins/RegionForSale/worlds/worldname/"). It contains configuration options which are related to regions like prices and permissions. Settings which are made for a special world (in the corresponding subfolder) override the value set in the main folder/file.

If you open one of the other files in the world folder (“parent-regions.yml” & “regions.yml”), you will find all these settings as well, but subdivided for each region you created ingame. Due to the fact that these files are regularly overwritten by the plugin while the server is running it is recommended to change these only ingame using the //rg set ... command.

Tip: To open ".yml" files you can use the default text-editor of your operating system, but it is much more comfortable to use editors that support syntax-highlighting like Notepad++.

Below you can see all available settings in the “config.yml”. Click on one of them to view its detailed description on the right side.

Contents

economic-settings
Holds economy-related settings. Choose one of the subcategories for further information.
economic-settings.unit-type
Default value: 'm2'
The unit type determines how the price for the region is calculated. See the following list of the possible values and their effect on the region prices:
  • 'region'/'m1' ⇒ The prices set below (economic-settings.cost-per-unit) are directly taken as region-price and are therefore not multiplied at all -> a region will always this fixed price, no matter which size the region has
  • 'm2' ⇒ square-meter; the price will be multiplied with the amount of blocks on the surface-area
  • 'm3' ⇒ cubic-meter; the price is multiplied with the full amount of blocks within the region (-> volume)

Example:

A region has a size of 10*20*50 (width*depth*height). The price for renting is set to 5. So to rent the region you have to pay the following prices based on the unit type:

  • For 'region'/'m1' the total price would be 5
  • For 'm2' the total price would be 10*20*5 = 1.000
  • For 'm3' the total price would be 10*20*50*5 = 50.000
economic-settings.costs-per-unit
The settings in this category declare the price of a region. "costs-per-unit" means that the prices will be multiplied based on the unit-type that is chosen.
economic-settings.costs-per-unit.buying-price
Default value: 100
This is the price for buying the region, using //rg buy. The amount is only withdrawn once on purchase.
economic-settings.costs-per-unit.selling-price
Default value: 80
If you want to give users some money back when they sell their regions back to the server (//rg sell), set this to a value greater than zero.
economic-settings.costs-per-unit.taxes
Default value: 3
Taxes are regularly withdrawn from users who bought the region. The interval for this is set in the "general.yml". If you don't want to have taxes set this to zero.
economic-settings.costs-per-unit.rent
Default value: 15
The rent is collected once when the user rents the region (//rg rent) and then, just like taxes, in a regular interval, which is set in the "general.yml".
economic-settings.buyable
Default value: true
Setting this to false will disable the possibility to buy the region.
economic-settings.rentable
Default value: true
Setting this to false will disable the possibility to rent the region.
permissions
This category holds options which concern the rights a player has. Choose a subcategory for more information.
permissions.permission-required-buy
Default value: true

If this is set to true a player will need the permission-node "regionforsale.buy" to buy a region.

If you change this ingame for a specific (parent-) region the permission-node is "regionforsale.buy.region-name".
This permission-node allows the user to buy all regions inside, except for inner regions/areas which have this set to true as well. In this case the user needs a separate permission for this region.

permissions.permission-required-rent
Default value: true

If this is set to true a player will need the permission-node "regionforsale.rent" to rent a region.

If you change this ingame for a specific (parent-) region the permission-node is "regionforsale.rent.region-name".
This permission-node allows the user to rent all regions inside, except for inner regions/areas which have this set to true as well. In this case the user needs a separate permission for this region.

permissions.max-regions-per-player
Default value: 0

Defines the maximum amount of regions a player is allowed to have.
Zero (0) is standing for an unlimited amount.

If you set this for a special world it can exceed the global limit. In this case only the regions in this world will be counted (if a user attempts to purchase a region in this world). If a user tries to purchase a region in another world the regions in this one will be ignored because of the separate limit.
This also applies to normal and parent regions.

permissions.max-regions-per-player-buy
Default value: #<Integer> (Set to enable)

Defines the maximum amount of regions a player is allowed to buy.

  • Use this setting if you want to differentiate between bought and rented regions.
  • Zero (0) is standing for an unlimited amount of regions.
  • If you do not use this setting (no value set) permissions.max-regions-per-player will be used.

See also: permissions.max-regions-per-player

permissions.max-regions-per-player-rent
Default value: #<Integer> (Set to enable)

Defines the maximum amount of regions a player is allowed to rent.

  • Use this setting if you want to differentiate between bought and rented regions.
  • Zero (0) is standing for an unlimited amount of regions.
  • If you do not use this setting (no value set) permissions.max-regions-per-player will be used.

See also: permissions.max-regions-per-player

permissions.max-rent-time
Default value: 0

Defines the maximum time of rent in minutes. The timer can be reset by using //rg rent a second time.
Zero (0) is standing for unlimited.

permissions.group-settings

This section can be subdivided by group-names and allows to change certain restrictions for special user groups.

To assign a user to a group give him the permission "regionforsale.group.group-name".

Example:

group-settings: premium: max-regions-per-player: 5 vip: max-regions-per-player: 7
permissions.group-settings.group-name-here
This is a placeholder for a group name.
See permissions.group-settings.
permissions.group-settings.group-name-here.max-regions-per-player

See permissions.max-regions-per-player

If a player is in multiple groups the highest amount counts.

permissions.group-settings.group-name-here.max-regions-per-player-buy

See permissions.max-regions-per-player-buy.

If a player is in multiple groups the highest amount counts.

permissions.group-settings.group-name-here.max-regions-per-player-rent

See permissions.max-regions-per-player-rent.

If a player is in multiple groups the highest amount counts.

permissions.group-settings.group-name-here.max-rent-time

See permissions.max-rent-time.

If a player is in multiple groups the highest value counts.

region-rebuilding
Auto-rebuilding will 'bulldoze' a region after it was sold or the player wasn't able to pay anymore.
How the region should look like afterwards is defined by this section.
region-rebuilding.auto-rebuild
Default value: false
Enables/disables automatic region rebuilding.
region-rebuilding.block-id
Default value: -1

The region will be filled up with this block (-id) from bottom to ground.
This is executed before the rebuild+ operations.

-1 disables this simple form of rebuilding.

region-rebuilding.block-data
Default value: 0

Additional data of a block. This refers to the block-id set above.

region-rebuilding.rebuildPlus-operations
Default value: [] (empty list)

Rebuild+ operations are advanced "algorithms", which allow to personalize the look of your regions. There is a separate help page about this.

You can find information about how to fill a String-List at the bottom of the page.

Example:

The following configuration will have the same effect as setting block-id to 2 (grass):

rebuildPlus-operations: - layer BOTTOM GROUND grass - layer GROUND+1 TOP air
region-rebuilding.rollback
If rollback is enabled the plugin will save a snapshot of the region when it is bought and will reapply this snapshot when it is sold. This means the region will look exactly the same as it looked before. The downside of this is that each single block has to be saved.
region-rebuilding.rollback.enabled
Default value: false

Enables / disables the rollback feature. This setting is independant from region-rebuilding.auto-rebuild.

If rollback is enabled the plugin will save a snapshot of the region when it is bought and will reapply this snapshot when it is sold. This means the region will look exactly the same as it looked before. The downside of this is that each single block has to be saved.

region-rebuilding.rollback.bottom-end
Default value: 'BOTTOM'

States from which level (inclusive, upwards) the region will be saved. This allows to ignore non-visible parts of the region that are below ground level (mostly just stone and dirt), which can also be rebuilt using just a simple function. This helps to save some disk space and computing power while rebuilding. See also the example below.

The level can be set relative to the region boundaries using "BOTTOM", "GROUND", and "TOP". You can learn how to use these in the rebuilding tutorial.

The default value "BOTTOM" states that the whole region is saved into a file. Every layer starting at the region bottom is saved.

Example:
The following setup shows a rebuilding example for e.g. a house with a pool, where the pool needs some space in the ground:

region-rebuilding: rebuildPlus-operations: - layer BOTTOM GROUND-3 stone rollback: enabled: true bottom-end: GROUND-2

Everything up from ground-level -2 will be saved block by block, everything below will be filled up with stone.

region-rebuilding.ground-level
Default value: -1

The ground-level is the y-value of the ground of a region. It is required as a point of reference for region rebuilding.

-1 ≈ No ground-level set.

Usually it would not make sense to set this globally, as most regions are on different heights, which requires individual settings. But if you have flat worlds or cities which are on the same level (→ parent regions) it can be very handy to set this for whole areas.

Tipp: Set "auto-set.ground-level" in the "general.yml" to true and every time you create a new tradeable region its ground-level will be set to your current y-position.

[x]
Select one of the settings on the left side to view a detailed description.

Explanation of Datatypes

<String> A String is a sequence of letters, like "Hi World". It can be surrounded by quotation marks.
<Integer> A whole number. 42, for example.
<Double> A Double is a floating point value, like 3.14. But you can also use whole numbers (→ Integer).
<Boolean> A Boolean type can have one of two values: true or false.
<String-List>
A list of strings. Example:
some-key: [first text, second text] another-key: - first text - second text