====== 領域保護 その3 ======
----
領域保護 [[user:gorou12:region|1]] / [[user:gorou12:region2|2]] / **3** \\
チェスト保護 [[user:gorou12:region|1]] / [[user:gorou12:region:lwc2|2]] / [[user:gorou12:region:lwc3|3]] \\
----
==== 領域保護の現在の仕様 ====
* 保護可能サイズは1つの保護領域につき、10万ブロックまで。
* 1人の保護可能数は、サーバー内全マップ合わせて500個まで。
==== フラグについて ====
フラグとは、自分の保護領域内で、自分以外の人ができる行動・できない行動を制御できるものです。
設定するには、
/region flag 領域名 フラグ名 値
の書式でコマンドを入力します。\\
領域名は適用したい領域名。フラグ名は下の表を参考にしてください。\\
値は、ほとんどの場合__「allow(許可)」または「deny(拒否)」__の2択です。
以下、このサーバーで使用できるフラグを紹介します。\\
特にフラグを設定していない場合は「初期値」が適用されています。
^フラグ名^詳細^初期値^
|interact|allowにすると、「使う系」「チェスト系」「乗る系」のものが使えるようになります。|//deny//*|
|chest-access|allowにすると、チェストなどを開けられるようになります。|deny|
|use|allowにすると、ボタン・レバー・感圧板を操作できるようになります。|allow|
|>以上の3フラグは、下図も参考にしてください。|||
|* interactは**サーバー**の初期値はdenyとされていますが、ほぼ全ての**マップ**の初期値が\\ (管理人さんの手動?によって)allowに上書きされています。\\ 気になる方は、各ワールドに存在する「 %%__grobal__%% 」領域のフラグを確認してください。|||
| |||
|vehicle-place|allowにすると、トロッコ・ボートを設置できるようになります。|deny|
|vehicle-destroy|allowにすると、トロッコ・ボートを撤去できるようになります。|deny|
|>上の2つはセットで許可or拒否することをお薦めします。|||
| |||
|enderpearl|allowにすると、エンダーパールでワープできるようになります。\\ denyにすると抑制します。|allow|
|passthrough|allowにすると、だれでもブロックの設置・破壊ができるようになります。\\ 利用例:下記のgreetingのみを目的とする領域を作る、等|deny|
|pvp|allowにすると、領域内でPvPができます。 denyにすると出来なくなります。\\ なおこのプロパティはゲーム(PvP)マップのみ有効です。|allow|
| |||
|greeting|値の部分に言葉(チャットに打てる文字種すべて可)を入れると、領域に入ったプレイヤーに\\ メッセージを表示します。|なし|
|farewell|値の部分に言葉(チャットに打てる文字種すべて可)を入れると、領域から出たプレイヤーに\\ メッセージを表示します。|なし|
|>コマンド例:/rg flag 領域 greeting こんにちは ←領域に入るたびに「こんにちは」と表示されます。\\ この2つは**通るだけで表示される**ため、迷惑になる可能性もあります。設定する際は注意しましょう。\\ **下の説明**もご覧ください。|||
|>この他、「指定したコマンドを拒否する」フラグも存在しますが、使い方を間違うと\\ 脱出できない罠ができるためここには掲載しません。Wiki内の他のページの記載を参照してください。|||
interact、chest-access、useの各フラグは、**あるアイテムを他人に使ってよいか悪いか**を\\
制御するものです。\\
interactの対象アイテムは、chest-access、useで設定できるアイテムを内包しています。\\
以下に、3フラグの関係のイメージと、それぞれに含まれるアイテムの代表例を挙げます。\\
いずれもallowで許可、denyで拒否となります。
{{:tech:flag_image.png?direct&600|}}
また、greetingについての補足となりますが、\\
入った時点でメッセージを自動表示できることから、主に第二ホームマップの**ゲート都市**で\\
来訪者や住民への告知を行うのに使われているケースが多く見られます。
普通にゲート周囲を保護してgreeting設定してしまうと起きる問題として、\\
**ゲートにワープした直後に何度も同じメッセージが表示される**ことがあります。\\
この問題については、「__ゲート部分を含まないで保護をする__」ことにより解決できます。\\
ゲート部分を含んで保護をしつつ回避する方法は無いようです。
例として、以下のような状態で回避可能です。\\
(ちなみにですが、保護は4つほどに分けなければ実現できません…)\\
ゲート本体部分を含まなければ、例とは違う保護のかけ方をしても問題ありません。
{{:tech:greeting.png?direct&600|}}
----
==== メンバーとオーナー ====
メンバーおよびオーナーとは、その領域の作成者と同等の権限を持つことができる人のことです。
/region addowner 領域名 ユーザーID( , で区切って複数人同時指定可)
/region addmember 領域名 ユーザーID( , で区切って複数人同時指定可)
上の行がオーナー追加、下の行がメンバー追加です。\\
反対に削除したい場合は、それぞれ
/region removeowner 領域名 ユーザーID( , で区切って複数人同時指定可)
/region removemember 領域名 ユーザーID( , で区切って複数人同時指定可)
でオーナー、メンバーを削除できます。
なお、このサーバーの設定では、オーナーとメンバーには以下の差異があります。
* オーナー
* 領域保護をした本人を含む。本人と全く同じ権限を持つ。
* フラグを無視した行動(use denyの領域でボタンを使用できる)が可能。
* フラグの追加・削除、メンバー追加・削除等のコマンドも使える。
* メンバー
* フラグを無視した行動(use denyの領域でボタンを使用できる)が可能。
* フラグの追加・削除、メンバー追加・削除等のコマンドは使えない。
----
==== 優先度と親子関係 ====
=== 優先度 ===
優先度とは、読んで字の如く「優先されるレベル」です。英語でいうと Priority、プライオリティです。
もしも複数の領域が重なった場合(例えば以下の場合)は、「できない(deny)」系の情報が優先されます。
{{:tech:priority_before.png?direct&600|}}
ここで、優先度を設定すると、数字が**大きいほうが優先**されるようになって…
{{:tech:priority_after.png?direct&600|}}
^コマンド^詳細^
|/region setpriority 領域名 数値|領域の優先度を設定、数値には負の数も可|
|例:/region setpriority 赤い領域 10 ←「赤い領域」のpriorityを10にする||
なお、優先度の初期値は**0**です。
=== 親子関係 ===
親子関係とは、ある2つ以上の領域を近しい関係にすることです。英語でいうと Inheritance、インヘリタンスです。
ある1つの領域を親とし、他方の領域を子とすると、子にも親で設定された内容を引き継いできます。\\
ただし、子独自で設定していたり、子で値を変更したフラグがある場合は、子のほうが優先されます。
次の図をご覧頂くと、比較的分かりやすいかもしれません。
{{:tech:parent.png?direct&600|}}
たとえば貸しマンションなど、建物全体を保護したいが一部分だけ特定ユーザーに解放したい\\
時などに使える機能です。
^コマンド^詳細^
|/region setparent 子領域 親領域|領域の親子関係を設定、子は親の設定を継承する\\ 親領域を記述しない場合は親子関係を解消する|
|例:/region setparent 水色な子 オレンジな親 ←「水色な子」の親を「オレンジな親」とする||
|例:/region setparent 水色な子 ←「水色な子」の親は無し(初期値になる)||
----
==== グループの活用 ====
領域保護機能を提供する「WorldGuard」プラグインには、グループという機能があります。
その名の通り複数ユーザーのまとまりのことで、他鯖では「街の管理人グループ」とか\\
「OP権限のあるユーザーグループ」とかを結成するために使われているようです。\\
しかし、このサーバーではグループを自由に編集する機能は提供されていません。
が、WorldGuardから提供されるグループ分けは利用できます。\\
そのグループ分けは以下の通りです。
^グループ名^グループの対象ユーザー^
^all|全員。 特に指定しなければ、これが適用される。|
^members|その領域のオーナー+メンバー全員。|
^owners|その領域のオーナー全員。|
^nonmembers|その領域のオーナーやメンバー**ではない人**全員。|
^nonowners|その領域のオーナー**ではない人**全員。|
"member"と名のつくグループには**"owner"も含む**点をご注意下さい。
このグループ機能は「フラグの設定」に使えます。\\
フラグ設定時に、フラグと値の間に「**-g グループ名**」を付け加えると、「(グループの対象ユーザー)は~~できる/できない」といった設定ができます。
たとえば、領域内のチェストはメンバーだけ開けられるようにしたい場合、
/region flag 領域 chest-access **-g members** allow
とすれば良いのです。\\
なお、裏表をひっくり返して、「メンバー以外は開けられない」として
/region flag 領域 chest-access **-g nonmembers** deny
としても実現できます。
ちなみに、**同じ**領域に**同じ**フラグを2つ以上設定はできません。\\
これはグループ機能を使っても変わりません。
つまり、「オーナー以外のメンバーだけチェストを開けられる」にしたいため\\
chest-access -g members allow、chest-access -g owners denyという二枚がけは**不可能**です。\\
どうしてもしたい場合は、上記の優先度・親子関係を使うなどして対処しましょう。
----
==== その他のコマンド・Tips ====
このページに列挙していないコマンドを紹介します。
^コマンド^詳細^
|/region claim 保護名|保護名で領域保護を設定する|
|/region remove 保護名|領域保護を削除する|
|/region list 値|(値は無くても良い)サーバー全体の保護一覧を表示、値は表示ページ|
|/region info|今立ってる場所の領域保護情報を確認する|
|/region info 保護名|保護名の領域保護情報を確認する|
| ||
|//pos1|今立っている場所をFirst positionとする(木オノで左クリックしたと同じ)|
|//pos2|今立っている場所をSeconde positionとする(木オノで右クリックしたと同じ)|
|//pos1 x,y,z\\ //pos2 x,y,z|指定座標をFirst positionやSecond positionとする\\ xyzの数値はカンマ区切りで指定する 例://pos1 0,64,0|
以下、Tips
* すべての「/region」部分は、「**/rg**」でも構わない(エイリアス)。\\ 例:/region claim hogehoge は /**rg** claim hogehoge とも書ける。