WSLでMinecraftのマルチプレイサーバー WSLを100%有効活用する

WSLでマイクラサーバーを構築する

どうも楓です。

今回はちょっとしたメモ。

少し前にWindows Subsystem for LinuxでC言語の開発環境を構築しましたが、今回は全く別です。

広告
レクタングル




目的

Minecraft

マインクラフト

Minecraftというゲームを御存じですか? 数年前から爆発的に人気が出だしたサンドボックスゲームです。

その旧PC版、Java Editionでは自分でサーバーを立ててマルチプレイをすることができます。

で、このマルチプレイではプラグインと呼ばれる拡張機能を入れることができるしくみを有志が開発しており、シングルプレイをするよりも便利な機能がたくさんあります。

マルチプレイをみんなでワイワイするというよりは、一人でプラグインを使ったプレイを楽しみたいと思ったので、サーバーを構築することにしました。

MODを使わない理由

ここまで聞いて、Minecraftに詳しい人は何故MODを使わないのかと思ったのではないでしょうか。

はい。今回使いたい機能はWorldEditとMultiverseのみで、それ以上のものを使う気が無いからです。

WorldeditはMOD版もありますが、Multiverseはありません。Mystcraftなどを入れるとバニラとの互換性問題が出てくるし、本体バージョンの更新に支障が出ます。

WSLの注意点

WSLの仕様上の問題

  • WSLはサーバー用途を想定していない
  • WSLは開発用に組み込まれたもの
  • WSLではDeamonが動かない

Minecraftの場合

上の問題から、ポート開放してグローバルに公開するとかそういったことは想定していませんん。

飽くまでシングルプレイ(またはLan内マルチプレイ)でWorldEditなどのプラグインを動かすだけとなります。

サーバー解放したい人は素直にサーバー機作るかVPS使ってくだされ。完全バニラなら一応動きはしますが……。

 WSLを使う意味

ぶっちゃけ、上の欠点を考えるとWSL使うメリットは皆無です。

重要なのは、Linuxであること。つまりサーバープラグインを導入するための改造版、Spigotをインストールする時。

Spigotはサーバープラグインを導入するための改造版クライアントですが、ライセンスの問題で配布することができません。

その為、自分でソースコードからビルドする必要があるのですが、これがLinuxだと簡単にできるので、WSLでビルドします。

なおWSLでビルドしてwindowsで起動すれば公開することもできます。

Spigotのビルド手順

例によってWSLのインストール方法は省略します。

楓の使っているディストリビューションはUbuntuです。それ以外はご自分で調べてどうぞ。

前提プログラムのインストール

まず、WSL端末を起動しGitをインストールします。

大前提ですので、もはや言うまでもないです。

続いて、Javaをインストールします。ビルドと起動のために必要です。

WindwosのGUIでビルドするのが面倒でサーバー機を用意するわけでもないもの好きくらいしかこのページをわざわざ見に来るのはいないはずなのでこれくらは当然でしょう。

Buildtool.jarのダウンロード

Spigotをビルドするためのフォルダ作成を行います。

CUIだとほんとに一瞬で終わるので楽でいいよね。

続いて、Buildtoolを公式から落とします。wgetでもcurlでもどっちでもいいです。

判らない人(ここを見る人にはいないと思うけど)はwget使えばいいと思う。短いし。

本題からそれるけど違いが知りたい人はこのページでも見てください。

curlとWgetの主な違いについて著者(Daniel Stenberg)の私見を述べています。自分の子どもとも言える curl をひいきしていますが、 Wget にも携わっているので、思い入れがな…

さて、入手したBuildtoolでSpigotを起動します。

バージョンは適宜変えてください。執筆当時(2018/04/21)最新版は1.12.2でした。

引数を打つのが面倒な人はスクリプトを組むこともできますが楓はスクリプトを組むのが面倒なので放置です。そんなに頻繁にアップデートしませんし。

続いて起動します。メモリとかの引数は一回目は指定しなくていいです。

こんな感じで、サーバーが立ち上がった後すぐに終了します。

eulaに同意しなさいということなのでvim使って変更します。別にviでも構いませんが。

流石にvimの使い方がわからない人はいないよね……?

そんなガチガチのGUIユーザーはWSLなんて興味すら沸かないはずだし。

Eulaが変更出来たら試験起動。今度は引数指定しましょう。

(初期設定だからあまり意味がないけど)

実際に入って確認します。

動いていますね。

あとは起動用シェルを作るなり、プラグインを入れるなりしてよいシングルマルチプレイをお楽しみ下さい。

広告
レクタングル




シェアする

フォローする

広告
レクタングル