サーバとか解らない人のためのMinecraftマルチプレイサーバ

Minecraftの真髄はマルチプレイにある、と思う。
具体的な目標を持っているのでない限り、一人で遊んでいると大してすることがない。家を建て、周囲を明るくし、ちょっと地下を探索したら、もう大体満足してしまう。いやまあ、そこで自発的に何か考えるのがマイクラの遊び方ではあるのだが。
だが他に人がいると俄然張り合いが違う。「他人に見せる」というだけで色々とやりたいことが出て来るというものだし、また自分が見ていない間に他人のプロジェクトが進行しているのも楽しい。そして複数の人が場所を求めて放浪することでインフラとしての道路や鉄道整備の必要性が生じ、また材料の取引なども発生する。


しかし、サーバを立てるにはいくつもの障害がある。
ひとつ、サーバ用に割り当て可能なPCがあること。
ひとつ、固定IPで利用可能な回線があること。
ひとつ、Java VM上で動くMinecraftサーバを管理できること。
日常的にそういう設定をするような職業の人ならば苦もないことだろうが、経験のない素人ではそうも行かないことがある。
私の場合、プロバイダが固定IPを提供していないので自宅サーバの線は諦めざるを得なかった。そうすると、安価なVPSホスティングしかない。
調べてみると、さくらVPSを利用したサーバ構築情報が複数あったのでそれらを参考にやってみることにした。そっくりそのまま模倣してみたつもりだが起動しない。「起動に失敗」と出るのみで失敗の理由すら定かではないので解決の術もなく途方に暮れる。
せめてパッケージ化されたexe単体で済むWinサーバならば話は単純だったのかも知れないが、CentOSにコンソール経由でviによる設定ファイル編集を……というのは、普段コンソールを触るような仕事をしているでもない素人にはかなりしんどい話だ。


個人で開発しているものにそこまで要求しても詮ないことだが、サーバ構築の必要性によってマルチプレイの敷居が上がってしまっているのは残念と言わざるを得ない。せめてMinecraftインストール済みVPSでもあればいいのに……と思っていたら、あった。
http://mossycobble.com/
サーヴィス名からして「苔の生えた丸石」である。サーバは割り当て性能と人数制限別にZombie→Skeleton→Spider→Creeper→Pig Zombie→Ghastの6グレード。一番安い共有サーバZombieは最大プレイ人数10人で$14.99/月、占有サーバで最大400人のGhastは$139.99/月。PayPal経由で支払い可能。
bukkitはじめMODにも対応と至れり尽くせり。必要ならば音声チャットMumbleのサーバもくれる。


英語のサーヴィスであること、メニューが多段であることで少々操作が判り難い。順に説明しよう。
まず、トップページのクリーチャーアイコンからサーバの機能一覧ページに飛べる。利用したいグレードの下段[Order]をクリックすれば申し込みページ。月払い/半年払い/年払いを選択してカートに保存……まあこの辺はごく普通のショッピングカート機能なので省く。注文完了したらPayPalで支払いを処理。
さて、再びトップページに戻ったら左の緑色ログイン窓に注文時に設定したメールアドレスとパスワードを入れログインする。上部にはサーヴィス全体のメニュータブの下にログイン中のユーザページメニューが並ぶ(この辺ちょっとデザイン的にわかりにくい)。
「My Products & Services」を選ぶと再度ログイン情報を求められ、契約中のサーバ情報が出てくる。ただし、これ契約完了→即使用可能じゃなくて、どうやら手作業でセットアップしてるっぽいのでちょっと時間がかかる。最初それが判らずに1時間ぐらい悩んだ挙句問い合わせメール送ってしまった。
右側のView Detailsボタンをクリックした時にStatus: ActiveになっていてIPアドレスが出ていればサーバ設定完了。


さて、ここからがちょっと判り難いところなんだが、実はこの部分は「VPSサーヴィスのユーザ情報画面」であって「マイクラサーバの管理画面」ではない。管理画面に入るには、最上段緑色タブの右側「Minecraft Shared Server Panel」をクリックする。ここでタブメニューの下に並んでいる灰色文字のみでのメニューから「Login」を選び、Registerで新規アカウントを登録せねばならない。
「Servers」にはあなたのアカウントで利用可能なサーバ一覧がある。既に契約済サーバがActiveになっていれば、ここに表示される筈だ。サーバ名をクリックすると設定画面になる。ざっと項目を解説しよう:

Name
サーバの、というかワールドの名前。好きに付けていい。
Status
サーバの状態と接続ユーザ数。
Port
サーバの空きポート。Multiplayの接続先にIPアドレスに続けてこれを記入。
Players
最大接続数。
World
これははっきり判らないのだがシード値だろうか?空欄だと自動的に「world」になるらしい。
Server JAR
一番重要な項目、Minecraft_serverのバージョンなど。これをプレイヤーの環境に合わせないとサーバーにログインできない。ノーマルの最新状態なら(この記事の執筆時点では)Default Minecraft Server 1.7にする。
Show advanced options
ここにチェックを付けると隠しメニューが出るが、とりあえずは気にしなくていいだろう。

ここから下は権限設定関係。

Default Role
初めてサーバに入った人に与える権限の設定。
Server Visible for
サーバ一覧に掲載して他ユーザにも見えるようにするかどうかの設定。多分、知人にIPを直に知らせる場合は不可視でいいと思う。
IP Auth Role
Manage Players に登録されたユーザに与える権限、だと思う。
Teleport Rol
テレポートコマンドの使用権をどのユーザ権限まで与えるかの設定。
Summon Role
召喚コマンドの使用権をどのユーザ権限まで与えるかの設定。
Chat Role
tでゲーム内チャットを使えるユーザ権限の設定。

以上で必要なサーバ設定は完了。プレイヤーにIPアドレスと空きポートを教え、Multiplayerのサーバアドレスにxxx.xxx.xxx.xxx:yyyyyの形で入力すれば接続できる。ゲームプレイヤー自身はMossyCobbleへのユーザ登録などをする必要はない。
Zombieサーバを2人で遊んでみたが、やや動作が重くブロックの反応が一歩遅れたり位置情報が微妙にズレて「いしのなかにいる」やベッドから降りられない現象などを生じた。まあメモリ512MBの共有サーバだし海外との通信なので遅延も生じるだろうからあまり文句も言えないが。


英語のサーヴィスであることの敷居は低くないものの、自力でサーバ立てるよりはまだしも簡単ではないかと思う。初めてのことなので些か試行錯誤したが、解っていれば申し込んでから1〜2時間もあればプレイ環境を整えられるだろう。
あとはmcmapの類いでワールド全図生成ができれば言うことないのだが出力できたので追記する。

mcMapによるワールドデータ全体地図の出力

mcMapはマイクラのワールドデータを読み込んで全体図を出力するアプリである。
イクラ公式のマップ機能は極めて漠然としたものしか把握できず(これはこれで楽しいが)今すぐに全地図を用意するというわけにも行かないので、マルチプレイで各自の作業領域を把握するにはイマイチ向かない。
mcMapなら、全図をすぐに確認でき、各ブロックすら把握可能な詳細情報が得られるため共有地図の作成用としてはこちらの方が便利であろう。

mcMapを起動し、Fileメニューからワールドデータを開く。Open Worldの方はローカルのセーブデータを見に行くので、ダウンロードしてきたデータを開きたい場合はOpen World Folderで開くファイルを指定する。
ワールドデータはmossycobbleのServerPanel→Servers→当該のサーバ→BackUpでワールドデータのバックアップを作るとFTP情報が得られる。ただし何故かHostがftp://0.0.0.0になっているが、ここはusashared.mossycobble.comに接続しなければならない。後の情報はそのまま使える。
ダウンロードしてきたワールドデータを読み込ませればマップの全体像が見える。あとはレンダーモードを変更するなどしてご自由に。torchlightモードにするとプレイヤーの活動領域が把握し易い。