ユーザがプレイ中にターミナルからコマンドを実行できるようにするサーバの設定方法を紹介します。
サーバの環境は以下のとおりです。
・OS: Ubuntu 14.04
・Minecraft: Version 1.8.6
サーバの設定項目はserver.propertiesに纏められていますが、ターミナル実行の類いはその中でも「op-permission-level」かと勘違いしがちですが、これは管理者の権限です。
ユーザにコマンド実行の権限を与えるための設定はserver.propertiesと同じ階層にあるops.jsonファイルです。
このファイルを開き、以下のようにユーザに権限を与えればOK。
[
{
"uuid": "b448xxxxxxxxxxxxxxxxx8b1d",
"name": "adamrocker",
"level": 4,
"bypassesPlayerLimit": true
}
]
複数のユーザに権限を設定したい場合はJSONフォーマットにしたがって以下のように続けます。
[
{
"uuid": "b448xxxxxxxxxxxxxxxxx8b1d",
"name": "adamrocker",
"level": 4,
"bypassesPlayerLimit": true
},
{
"uuid": "xxxxxxx",
"name": "yyyyyyyy",
"level": 2,
"bypassesPlayerLimit": false
}
]
{ }の後に「,(コンマ)」をつけるのを忘れないように気をつけましょう。
uuidとは?
uuidはマイクラの世界でユーザを一意に特定するIDです。
マイクラの開発元Mojangが提供する下記のURLにアクセスすることで簡単に調べることができます。
<ユーザ名>の部分を自分のマイクラのユーザ名に変更して下さい。
https://api.mojang.com/users/profiles/minecraft/<ユーザ名>
URLをブラウザにコピペしたら下記のような結果を取得できます。
{"id":"b448xxxxxxxxxxxxxxxxx8b1d","name":"adamrocker"}
このid部分の"b448..."の部分がuuidです。
nameとは?
マイクラのユーザ名です。先ほどUUIDを取得するために使ったユーザ名と同じです。
levelとは?
どのコマンド実行の権限を与えるかを指定します。
Version1.8.6では、設定できるレベルは1〜4までで、数字が大きいほど大きな権限となります。
各レベルで実行できるコマンドは以下のとおりです。
1 - spawn-protectionの範囲を編集することができる
2 - シングルプレイのチートコマンド
/clear, /difficulty, /effect, /gamemode, /gamerule, /give, /tp
が利用できる。さらに、コマンドブロックも編集できる。
3 - マルチプレイのチートコマンド(stop以外)
/ban, /deop, /kick, /op
が利用できる。
4 - /stopコマンドを利用できる
bypassesPlayerLimitとは?
サーバにログインしているプレイヤー数がserver.propertiesで設定した「max-players」で設定した人数に達していたとしても、このユーザがログインできるか否かの設定。trueならログインでき、falseならログインできません。
設定の完了後、マイクラサーバを再起動すれば設定が反映されます。