-
Notifications
You must be signed in to change notification settings - Fork 44
Region settings
Each region provides a variety of settings that change the behavior of the region. In the following an explanation for all available region-options and how to alter them is given. Let's get started!
When typing in /arm info <regionId>
, the plugin will output all important options that are currently applied to the region. For example: An output for a rent region could look like this. A sell-region or a contract-region would have almost the same output. The only difference is, that:
- Contract-regions ...
- ... don't have a maximum extend time.
- ... have a field that shows if the region contract is terminated or not
- Sell-regions ...
- ... don't have a maximum extend time.
- ... don't have a extend time.
In the regions.yml
, the same region would look very similar to this:
Regions:
world:
test1:
sold: false
paybackPercentage: 0
isHotel: false
lastreset: 0
lastLogin: 0
maxMembers: -1
regiontype: rentregion
price: 1.0
signs:
- world;-213.0;70.0;272.0;WALL;SOUTH
kind: medium
flagGroup: Default
inactivityReset: true
entityLimitGroup: Default
autorestore: true
allowedSubregions: 0
userrestorable: true
boughtExtraTotalEntitys: 0
isprotectionofcontinuance: false
boughtExtraEntitys: []
extendTime: 60000
payedTill: 1688316736817
maxExtendTime: 300000
In the following we will go through each parameter and explain what he does and which commands can be used to alter it.
The regions.yml
is built hierarchically. These are the different levels:
-
Root: This is the root level of the configuration. It is always named
Regions
and holds the configuration sections for all worlds. - Worlds: At this level you have one configuration section per world. Each section is always names after the world that contains the corresponding WorldGuard-/ARM-regions
- Regions: The 3rd level holds one configuration section per region. The configuration section of each region always has the same name as the region in WorldGuard.
-
Region options: The 4th level is the most interesting level. It holds the information for each region with the whole configuration of it. This includes all directly configurable parameters, but also information like the position of sell-signs or the time of the last login of the region owner.
It is very easy to make a mistake while editing theregions.yml
manually. Because of that it is not recommended to edit this file using a text editor. Instead one should always use in-game commands to alter any region-settings.
regiontype:
Defines the sell-type of a region. This can't be changed after the region has been created. Possible options are: sellregion
, rentregion
and contractregion
.
sold:
Specifies if the region is currently sold to a player.
paybackPercentage:
Defines the percentage of in-game money that the player gets back if he manually unsells his region back to the server.
A player can unsell his region back to the server using the corresponding button in /arm gui
within the management page of his region, or by using the command /arm sellback <regionId>
.
- For sell-regions the amount of money a player gets back is the payback percentage applied to the buying price of the region.
- For contract- and rent-region it is per percentage applied to the buying price of the remaining time left on the region.
To change the payback percentage of a single region, use the following command:
/arm setpaybackpercentage <RegionId> <percentage>
To change it for all regions that currently belong to a certain regionkind, use the following command:
/arm setpaybackpercentage rk:<RegionKind> <percentage>
isHotel:
Specifies if the region is a hotel region or not. If the region is a hotel region, the owner is only allowed to break blocks that he has placed by himself. Note that this doesn't disable the usage of TNT or pistons. Please use the corresponding WorldGuard flags to protect the corresponding region against such exploits.
The commands to change this setting are:
/arm sethotel <RegionId> (true/false)
/arm sethotel rk:<RegionKind> (true/false)
lastreset:
Holds the information of when owner of the region restored it the last time. Players can (if they have the needed permissions) restore their own regions. To prevent players from using this to cheat themself items or to cause lags, this action has a cooldown. To cooldown can be configured in the section Other.userResetCooldown
in your config.yml
lastLogin:
Holds the information of then the owner of the region logged in the last time. If enabled ARM can automatically restore regions owned by players that weren't online for a specific amount of time. More on that here: https://github.com/alex9849/advanced-region-market/wiki/Inactivity-reset
maxMembers:
Defines how many members the owner can add to the region. -1
corresponds to unlimited.
The commands to change this setting are:
/arm setmaxmembers <RegionId> (<number>/unlimited)
/arm setmaxmembers rk:<RegionKind> (<number>/unlimited)
price:
The price of the region. Is always a numeric value. For sell-regions this value is the one-time-payment-price. For rent- and contract-regions this is the price per extend period.
The price can be changed using the following commands:
/arm setprice <RegionId> <autoprice>
/arm setprice <RegionId> <price>;<extendTime>;<maxExtendTime>
/arm setprice rk:<RegionKind> <autoprice>
/arm setprice rk:<RegionKind> <price>;<extendTime>;<maxExtendTime>
extendTime
and maxExtentTime
are always needed even if the corresponding region doesn't has a sell-type that needs that information. The values of extendTime
and maxExtentTime
will be ignored if not needed.
extendTime
and maxExtentTime
are time-values. To define the time-unit use "s" for seconds, "m" for minutes, "h" for hours and "d" for days. For example: "5d" would mean 5 days.
signs:
A list with the position of all sell-signs that are connected to the region.
kind:
The Regionkind. The Regionkind is the group that the region belongs to. Players can be limited in the number of regions that they are allowed to own, based on the regionkind a region belongs to. More about regionkinds here: https://github.com/alex9849/advanced-region-market/wiki/Regionkinds-&-RegionkindGroups
And more about limits here: https://github.com/alex9849/advanced-region-market/wiki/Limits
The Regionkind can be changed using the following commands:
/arm setregionkind <RegionId> <RegionKind>
/arm setregionkind rk:<RegionKind> <RegionKind>
flagGroup:
The FlagGroup a region belongs to. FlagGroups need to be manually enabled in the config.yml. They allow to set flags automatically based on if the region is currently for sale or sold. FlagGroups can also be configured in a way that allows region owners to adjust certain flags by their own. This can be done in the GUI. More about FlagGroups here: https://github.com/alex9849/advanced-region-market/wiki/FlagGroups
The FlagGroup can be changed using the following commands:
/arm setflaggroup <RegionId> <FlagGroup>
/arm setflaggroup rk:<RegionKind> <FlagGroup>
There are more commands about FlagGroups. Read the FlagGroup-article to find out more.
inactivityReset:
Determines if a region should be reset if the owner hasn't been online for a specific amount of time.
The commands to change this setting are:
/arm setinactivityreset <RegionId> (true/false)
/arm setinactivityreset rk:<RegionKind> (true/false)
entityLimitGroup:
EntityLimitGroups allow to limit the number and type of entities that can be spawned on a single region. More about EntityLimitGroups here: https://github.com/alex9849/advanced-region-market/wiki/EntityLimits
The EntityLimitGroup can be changed using the following commands:
/arm setentitylimit <RegionId> <EntityLimitGroup>
/arm setentitylimit rk:<RegionKind> <EntityLimitGroup>
autorestore:
This option specifies if a region should be restored if it gets reset for any automatic region. This can be for example that the rent for the region expired, or that the region owner was inactive for a specific time.
The commands to change this setting are:
/arm setautorestore <RegionId> (true/false)
/arm setautorestore rk:<RegionKind> (true/false)
userrestorable:
This option specifies if the region owner should be able to restore the region. Even if enabled owners can only restore their region once and have to wait for a cooldown afterwards. Players that should be able to restore their region, also need to have the following permission: arm.member.restore
The commands to change this setting are:
/arm setuserrestorable <RegionId> (true/false)
/arm setuserrestorable rk:<RegionKind> (true/false)
isprotectionofcontinuance:
This option sets a region as under protection of continuance. If server stuff sees a particular beautiful building, they can enable this option on the region. If enabled the region will not be restored after the owner sells back to the server the region or if the region gets reset for some region. The region will also not be put back on sale. This option automatically disables itself, if the region owner restores his region manually.
The commands to change this setting are:
/arm setprotectionofcontinuance <RegionId> (true/false)
/arm setprotectionofcontinuance rk:<RegionKind> (true/false)
extendTime:
Defines the amount of time that a rent-region or a contract-region should be extended for if it gets extended. This option gets set together with the price of the region.
The price can be changed using the following commands:
/arm setprice <RegionId> <autoprice>
/arm setprice <RegionId> <price>;<extendTime>;<maxExtendTime>
/arm setprice rk:<RegionKind> <autoprice>
/arm setprice rk:<RegionKind> <price>;<extendTime>;<maxExtendTime>
payedTill:
Contains the information on to which time point a rent-region or contract-region has been payed.
maxExtendTime:
Defines the maximum amount of time that a rent-region can be payed in advance. This option gets set together with the price of the region.
The price can be changed using the following commands:
/arm setprice <RegionId> <autoprice>
/arm setprice <RegionId> <price>;<extendTime>;<maxExtendTime>
/arm setprice rk:<RegionKind> <autoprice>
/arm setprice rk:<RegionKind> <price>;<extendTime>;<maxExtendTime>
terminated:
Is set to true
if a contract region has been terminated by the owner and should be reset after it expires. false
otherwise.
The commands to change this setting are:
/arm terminate <RegionId> (true/false)
- Home
- AdvancedRegionMarket API - Guide for plugin developers.
- Video tutorials - Watch and learn with Major Graft.
- Create a region
- Region settings
- Presets - Define region settings before creating a region.
- Autoprices - Calculate the price of a region automatically.
- Regionkinds - Regionkinds and RegionkindGroups can be assigned to your regions to group them together and bring them into a context.
- Limits - Limit the number of regions a player can buy.
- Inactivity reset & Takeover - Automatically reset a region because of inactivity or let members of regions with inactive owners become the new owner.
- FlagGroups - Assign certain flags to a region depending on its state.
- Entitylimits - Limit the type and number of entities a player is allowed to have on a region.
- Commands and permissions - Look up syntax, descriptions and permissions.
- Placeholders & messages
- Discord - Get involved with other AdvancedRegionMarket Admins, Plugin Developers, Testers. Support, General Discussion welcome.
- Sponsor - Sponsor the development of AdvancedRegionMarket