Приват территорий

*Приват* (*регион*) - параллелепипед, построенный по двум точкам. Внутри него действуют ограничения на изменение территории, эти ограничения определяются списком прав игроков в этом регионе. Таким образом, позволяют контролировать и ограничивать доступ к изменению территорий. Кроме двух точек и списка прав регион дополнительно может иметь флаги и некоторую другую информацию.

Создание регионов платное. Цена определяется, в основном, площадью региона.

Регионы часто жаргонно называют «приват». Операции с ними - создание, удаление - соответственно называют «заприватить» и «расприватить».

## Иерархия регионов

Регион, частично или полностью вложенный в другой, можно сделать дочерним.

Право full в родительском регионе дает все права во всех дочерних регионах, а права в дочерних регионах не дают преимуществ в родительских. Таким образом можно создавать большие родительские регионы-контейнеры, наполнять их дочерними регионами. Игроки с правами в дочерних регионах будут иметь эти права только в дочерних. Практическим примером использования родительских связей может быть город, территория которого охвачена одним большим регионом. В этом регионе созданы небольшие дочерние регионы для домов жителей, хозяйственных и других построек. Хозяева города могут дать права жителю на некоторую часть территории города (обычно это дом и прилегающая к нему область). При этом даже если у жителя будет право full в дочернем регионе, но нет прав в родительском, он не сможет ничего делать в родительском за пределами их пересечения.

Для предоставления прав строительства в дочерних регионах есть право build-child. Для более тонкой настройки существуют и другие права, которые можно видеть в таблице ниже.

При удалении родительского или дочернего региона связь тоже удаляется.

## Списки команд, прав, флагов

Ниже приведены полные списки команд, прав, флагов. Для команд начинающихся с **/region** существует краткая версия - **/rg**.

### Команды работы с выделением

 //hpos2
 //pos1
 //pos2
 //expand n <направление>
 //shift n <направление>
 //chunk
 //inset n (-hv)
 //outset n (-hv)
 //size
 //count
 //sel

Возможные направления: **up**(вверх), **down**(вниз), **north**(север), **south**(юг), **west**(запад), **east**(восток) или **me**(в сторону, куда смотрит игрок). Если не указано - используется me. Можно писать только первую букву направления (кроме **me**): **u**, **d**, **s**, **n**, **w** и **e**.

При увеличении/уменьшении выделения если указать отрицательное значение, например **-10**, регион будет увеличен/уменьшен в сторону, противоположную указанной. При сдвиге - сдвинут в противоположную.

### Команды управления регионами

 /region claim <название\_региона>
 /region select <название\_региона>
 /region delete <название\_региона>
 /region remove <название\_региона>
 /region rename <старое\_имя\_региона> <новое\_имя\_региона>
 /region setparent <дочерний\_регион> <родительский\_регион>
 /region removeparent <дочерний\_регион>
 /region addright <регион> <игрок> <право>
 /region info <название\_региона>
 /region rights <регион>
 /region flag <имя\_региона> <флаг> <allow/deny>
 /region list [страница]
 /region list o:<тэг организации> [страница]
 /region org o:<тэг организации> [страница]
 /region pistons <название\_региона> [ник игрока]
 /region intersect <регион 1> [регион 2]

### Список прав

Права разрешают делать игрокам разнообразные действия в регионе. Главные права - Build и Full. Build позволяет ломать и ставить блоки в регионе, а Full позволяет делать все, не накладывается никаких ограничений, в том числе позволяет удалять, изменять и переименовывать регион.

### Список флагов

Флаги региона определяют различные ограничения для тех, кто не является его владельцем. Технически, у каждого региона присутствуют все флаги в значениях по умолчанию.
Большинство флагов могут иметь только бинарное значение ("да" или "нет").
В поле значения можно вписать *allow* (разрешить) или *deny* (запретить), но так же вместо allow и deny можно писать 1 или 0, true или false.

 cart[3] | Разрешает установку вагонеток на рельсы
 cart2
 grow
 homes
 blow
 private
 animals
 mob-spawn

## Механика расчета стоимости региона

Формула расчёта такова: **10xz + 10xyz / 256**, где **x**, **y** и **z** — размеры региона, а получившееся число — сумма в Зелени. При расчете стоимости не учитывается положение региона в мире, одинаковые участки в разных частях мира будут стоить одинаково.

Основную цену региона составляет его площадь(**x** и **z**), объем стоит в 256 раз меньше. При перекрытии приобретаемого региона другими, за *уже купленные* кем угодно кубы второй раз плата не берётся. Так же и при расширении региона: плата взимается только за новую часть региона, а при расширении вверх переплаты за площадь не будет.

Минимальная цена создания региона — *100* Зелени если он *внутри* другого региона и *500* Зелени на территории без регионов. Это сделано чтобы противодействовать созданию мусорных регионов. Кроме того, минимальный размер грани региона - 5 кубов.

Примеры цен регионов:

* регион 16×16×128 (128 кубов по высоте) будет стоить *3840* Зелени;
* регион 16×16×84 (от неба до уровня 40) — *3400* Зелени;
* регион 100×100×84 — *132 812* Зелени.

## Служебные регионы

Кроме обычных регионов существуют служебные. Они являются просто сохраненными координатами и созданы для показа некоторой области. У служебных регионов нет прав, флагов и прочего, поэтому они не ограничивают доступ к территории и являются бесплатными. Их невозможно обнаружить ударом палкой, но можно посмотреть зная название и игрока, на которого записан служебный регион. Команды для управления служебными регионами начинаются с **/sregion** либо с **/srg** (краткая версия) и аналогичны командам для обычных регионов.

Любую выделенную область можно сохранить как служебный регион командой **/sregion claim <имя\_региона>**

Для того, чтобы посмотреть служебный регион надо набрать команду **/sregion select <имя\_региона>@<ник\_сохранившего>**. Для выделения своих регионов можно писать только имя.

## Положение регионов в правилах сервера

> *Запрещено создавать и иметь регионы, в названии которых не содержится очевидного указания на их предназначение или на их владельца - может быть удален в любое время, как мусорный регион.*
>
>

> *Частными случаями являются регионы, в названиях которых содержатся только цифры, более 5 цифр, название состоит из одной повторяющейся буквы, или из нескольких длительно повторяющихся букв.*
>
>
> Также мусорными считаются регионы, объем которых составляет менее 9 кубов. Из этого правила возможны специальные исключения.
>
>
>
>
> Примеры хороших названий регионов: CraftCity\_Magazin - Магазин города CraftCity, MegaPlayer93\_ferma - ферма игрока MegaPlayer93, RuinedCastle\_Hall - холл полуразрушенного замка. Такие регионы облегчают жизнь и игрокам, и модераторам, и новичкам.
>
>

> — "Правила GreenCubes"
>
>

## Роль регионов в геймплее

GreenCubes - игра с воксельным миром. Это значит, что весь мир игры представляет собой трехмерную сетку блоков, и каждый из них может быть изменен геймплейными методами. В мире может находиться неограниченное количество игроков, и каждый из них может изменять каждый блок. Интересы игроков будут неизбежно пересекаться и если не будет возможности разграничивать права на изменение участками ландшафта, для большинства игра не будет не интересна.

Регионы решают эту проблему. Они позволяют управлять правами на территорию, ограничивать нежелательное вмешательство посторонних игроков, в то же время допустив нужных игроков внутрь региона с помощью прав регионов. Флаги регионов позволяют включить или запретить определенную механику на территории внутри региона.

## Примечания

* Как выяснилось, был баг (на который никто так и не напоролся), который не позволил бы вам выставлять себе права, если бы вы зарегистрировались в игре под ником **all** - система бы давала/забирала права у всех, превращая любой ваш приват в бубличный