Skip to content

Region settings

alex9849 edited this page Jul 23, 2023 · 10 revisions

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!

Getting the current information

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.

Paramters

Configuration sections:

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 the regions.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.

Region options:

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
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. To more about FlagGroups here: https://github.com/alex9849/advanced-region-market/wiki/FlagGroups


inactivityReset:


entityLimitGroup:


autorestore:


userrestorable:


boughtExtraTotalEntitys and boughtExtraEntitys:


isprotectionofcontinuance:


extendTime:


payedTill:


maxExtendTime:

AdvancedRegionMarket

Setup

How it works

  • 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.

Reference

Support

  • Discord - Get involved with other AdvancedRegionMarket Admins, Plugin Developers, Testers. Support, General Discussion welcome.

Sponsoring/Donations

  • Sponsor - Sponsor the development of AdvancedRegionMarket
Clone this wiki locally