【マイクラ統合版】「コマンドだけで」荒らし対策をする

マインクラフト

ツイッターとかにもつぶやいたことがあるんですけど、統合版の荒らし、Java版に比べ非常に多い気がします。
統合版で友人(?)のサーバーで作業をしていた時に、荒らしが入ってきたこともあります。
その割にはプラグインで荒らし対策ができません。(プラグインサーバーを建てる方法がありますが、今回はXboxのマルチプレイ機能を想定して話を進めます)

なので、今記事では「プラグインなしで」「コマンドだけで」荒らし対策をしていこうと思います。

※サーバーを常時起動しておきたいなら、ConoHa VPSがおすすめです

準備1、権限者用のタグを作成する

荒らし対策が権限者や自分に効いてしまったら、いざというときに何もできないので、権限者には権限者用タグを付与し、そのほかの人だけに荒らし対策を有効にするようにします。
もちろんですが、今から作成するタグは、絶対に信頼できる人にしか付与しないでください!

①以下のコマンドを実行して、権限者用タグを権限者に付与します。

/tag [権限者の名前] add operator

これだけで完了です。
ちなみに、権限者用タグを剥奪するには、以下のコマンドを実行します。

/tag [権限者の名前] remove operator

準備2、コマンドブロックを出す

定期的にコマンドを実行するために、コマンドブロックを使います。
コマンドブロックはインベントリ内にないので、コマンドを使って出す必要があります。

以下のコマンドを実行します。

/give @p command_block

対策1、TNTを使えなくする

TNT、荒らしの定番ですよね。
これが使われてしまったら短時間でワールドが破壊されてしまいます。
憎きTNT、無効にしてしまいましょう。

「世界のオプション」で「TNT 火薬の爆発」を無効にする方法もあるんですが、どうやらsummonコマンド(コマンドを使用できる権限が必要です)を使えばTNTを使用できてしまうので(筆者調べ)、コマンドでTNTを消すようにしましょう。
その設定と以下のコマンドを併用するといいかもしれません。
まあ、権限なんてミスさえなければ付与されない気がしますが。

①コマンドブロックを以下のように並べます(矢印の向きに注意!!)

②「1」のコマンドブロックを以下のように設定します

「コマンド入力」に入力するコマンド
execute @a[tag=operator] ~ ~ ~ tag @e[r=2,type=tnt] add ignore_tnt
上のコマンドは、権限者用タグがある人の場所を基準にして半径2ブロック以内TNTignore_tntタグを付与します。

③「2」のコマンドブロックを以下のように設定します

「コマンド入力」に入力するコマンド
kill @e[tag=!ignore_tnt,type=tnt]
上のコマンドは、ignore_tntタグが付いたTNT以外を削除するコマンドです。

これで完了です。

これらのコマンドによって、TNTは権限者の半径2ブロック以内でしか使えません。
流石に権限者の前で堂々とTNTを着火する人なんていませんよね(汗
全てのTNTを対象にすればコマンドはもう少し単純になりますが、それでは権限者がTNTを使えなくなります。
別に使う必要なんてないですけど。

対策2、溶岩バケツを削除する

TNTが使えなかったら溶岩だ!!
そう考える荒らしが大勢います。
溶岩の処理はとても大変です。
溶源(?)を止めるまでマグマはひたすら流れ続けます。

なので、溶岩バケツを使用できなくしましょう!

①コマンドブロックを設置して、下のように設定します。

これでoperatorタグがある人以外は、インベントリに溶岩バケツが入ると自動的にインベントリから削除されます。
水バケツやミルクは消えません。
ただ、このようにしてしまうとサバイバルでは溶岩が使えなくなるので、このコマンドブロックはPvP鯖やクリエイティブ鯖ぐらいでしか使わないようにしましょう。

対策3、岩盤を削除する

岩盤ってサバイバルで破壊できないし、エンダークリスタルを置かれると爆発してしまうので、邪魔ですよね
なので、溶岩バケツ同様に岩盤アイテムも削除するようにしましょう。

②コマンドブロックを設置して、次のように設定します

さっきとあまり変わらないので、説明は不要だと思います。
勿論、operatorタグがある人のみ岩盤を使えます。

まとめ

今回はマイクラ統合版で、コマンドだけで荒らし対策をする方法を紹介しました。
これで憎き荒らしたちを撃退しましょう!!

ほかにアイデアが思いつけば順次追加していきます

コメント

  1. 追加項目
    エンドクリスタルを消す方法
    /give (セレクターor名前) command_block 1 で入手する。
    コマンドを2つ並べる 1つ目は、
    clear @a[tag=!operator] end_crystal 設定は、反復 無条件 常にアクティブ
    2つ目
    /kill @e[type=end_crystal] 設定は、チェーン 無条件 常にアクティブ
    だけでクリスタル対策になります。長文失礼しました。

タイトルとURLをコピーしました