目次

領域保護 その3


領域保護 1 / 2 / 3
チェスト保護 1 / 2 / 3


領域保護の現在の仕様

フラグについて

フラグとは、自分の保護領域内で、自分以外の人ができる行動・できない行動を制御できるものです。

設定するには、

/region flag 領域名 フラグ名 値

の書式でコマンドを入力します。
領域名は適用したい領域名。フラグ名は下の表を参考にしてください。
値は、ほとんどの場合「allow(許可)」または「deny(拒否)」の2択です。

以下、このサーバーで使用できるフラグを紹介します。
特にフラグを設定していない場合は「初期値」が適用されています。

フラグ名詳細初期値
interactallowにすると、「使う系」「チェスト系」「乗る系」のものが使えるようになります。deny*
chest-accessallowにすると、チェストなどを開けられるようになります。deny
useallowにすると、ボタン・レバー・感圧板を操作できるようになります。allow
>以上の3フラグは、下図も参考にしてください。
* interactはサーバーの初期値はdenyとされていますが、ほぼ全てのマップの初期値が
(管理人さんの手動?によって)allowに上書きされています。
気になる方は、各ワールドに存在する「 __grobal__ 」領域のフラグを確認してください。
vehicle-placeallowにすると、トロッコ・ボートを設置できるようになります。deny
vehicle-destroyallowにすると、トロッコ・ボートを撤去できるようになります。deny
>上の2つはセットで許可or拒否することをお薦めします。
enderpearlallowにすると、エンダーパールでワープできるようになります。
denyにすると抑制します。
allow
passthroughallowにすると、だれでもブロックの設置・破壊ができるようになります。
利用例:下記のgreetingのみを目的とする領域を作る、等
deny
pvpallowにすると、領域内でPvPができます。 denyにすると出来なくなります。
なおこのプロパティはゲーム(PvP)マップのみ有効です。
allow
greeting値の部分に言葉(チャットに打てる文字種すべて可)を入れると、領域に入ったプレイヤーに
メッセージを表示します。
なし
farewell値の部分に言葉(チャットに打てる文字種すべて可)を入れると、領域から出たプレイヤーに
メッセージを表示します。
なし
>コマンド例:/rg flag 領域 greeting こんにちは  ←領域に入るたびに「こんにちは」と表示されます。
この2つは通るだけで表示されるため、迷惑になる可能性もあります。設定する際は注意しましょう。
下の説明もご覧ください。
>この他、「指定したコマンドを拒否する」フラグも存在しますが、使い方を間違うと
脱出できない罠ができるためここには掲載しません。Wiki内の他のページの記載を参照してください。

interact、chest-access、useの各フラグは、あるアイテムを他人に使ってよいか悪いか
制御するものです。
interactの対象アイテムは、chest-access、useで設定できるアイテムを内包しています。
以下に、3フラグの関係のイメージと、それぞれに含まれるアイテムの代表例を挙げます。
いずれもallowで許可、denyで拒否となります。

また、greetingについての補足となりますが、
入った時点でメッセージを自動表示できることから、主に第二ホームマップのゲート都市
来訪者や住民への告知を行うのに使われているケースが多く見られます。

普通にゲート周囲を保護してgreeting設定してしまうと起きる問題として、
ゲートにワープした直後に何度も同じメッセージが表示されることがあります。
この問題については、「ゲート部分を含まないで保護をする」ことにより解決できます。
ゲート部分を含んで保護をしつつ回避する方法は無いようです。

例として、以下のような状態で回避可能です。
(ちなみにですが、保護は4つほどに分けなければ実現できません…)
ゲート本体部分を含まなければ、例とは違う保護のかけ方をしても問題ありません。


メンバーとオーナー

メンバーおよびオーナーとは、その領域の作成者と同等の権限を持つことができる人のことです。

/region addowner 領域名 ユーザーID( , で区切って複数人同時指定可)
/region addmember 領域名 ユーザーID( , で区切って複数人同時指定可)

上の行がオーナー追加、下の行がメンバー追加です。
反対に削除したい場合は、それぞれ

/region removeowner 領域名 ユーザーID( , で区切って複数人同時指定可)
/region removemember 領域名 ユーザーID( , で区切って複数人同時指定可)

でオーナー、メンバーを削除できます。

なお、このサーバーの設定では、オーナーとメンバーには以下の差異があります。


優先度と親子関係

優先度

優先度とは、読んで字の如く「優先されるレベル」です。英語でいうと Priority、プライオリティです。

もしも複数の領域が重なった場合(例えば以下の場合)は、「できない(deny)」系の情報が優先されます。

ここで、優先度を設定すると、数字が大きいほうが優先されるようになって…

コマンド詳細
/region setpriority 領域名 数値領域の優先度を設定、数値には負の数も可
例:/region setpriority 赤い領域 10  ←「赤い領域」のpriorityを10にする

なお、優先度の初期値は0です。

親子関係

親子関係とは、ある2つ以上の領域を近しい関係にすることです。英語でいうと Inheritance、インヘリタンスです。

ある1つの領域を親とし、他方の領域を子とすると、子にも親で設定された内容を引き継いできます。
ただし、子独自で設定していたり、子で値を変更したフラグがある場合は、子のほうが優先されます。

次の図をご覧頂くと、比較的分かりやすいかもしれません。

たとえば貸しマンションなど、建物全体を保護したいが一部分だけ特定ユーザーに解放したい
時などに使える機能です。

コマンド詳細
/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