0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【マイクラ】【Server Starter】マルチサーバーをもっと簡単に立てよう!

Last updated at Posted at 2021-08-23

#作成の発端

「マイクラのサーバーを立てる作業が難しい!面倒くさい!」

筆者はマイクラを始めて1年程度の新参者ですが、熱狂的にハマった結果、友人たちを集めては夜な夜なマルチプレイで遊んでいます。
しかし、サーバーを個人で立てるためには様々な壁を突破しなければなりません。
バージョンが変わるたびにlauncherからserver.jarをダウンロードしたり、server.propertiesを編集したり、…

なので、サーバーを管理するソフトを作っちゃいました!

#インストール方法

  1. こちらのリンクを踏むとソフトをインストールするためのインストーラーがダウンロードされます。

  2. ダウンロードが完了したらインストーラー(Setup_ServerStarter.msi)を起動してください。

    • 自作ソフトのため、以下のような制限を受けた場合は、詳細情報をクリックし、実行してください。

    image.png

  3. 画面の案内に従い、利用規約に同意するとインストール先を選択する画面が表示されるため、特に問題なければそのまま進んでください。

    • マイクラのクライアントが入っていない場合など、インストール先を変更する場合は適宜、変更してもらって問題ありません。
  4. インストールが終わったらインストーラーを閉じ、デスクトップにショートカットが作成されていることを確認してください。

#簡単に機能紹介
次回から実装でのポイント・工夫を解説していきますが、それを理解するために搭載している機能を紹介しておきます。
##前提条件(環境)
下記の環境で動作確認を行いました。

Index Value
OS Windows 10
CPU Core i7-9700
Port 25565 (TCP)
Git 2.31.1
Java JDK 16.0.1
  • このソフトではポート開放は自動で行われません。そのため、ご自身でセキュリティソフトやルーターのポート開放(ポートマッピング)の設定を行ってください。
  • WPFで開発しているため、OSはWindowsでしか動きません。

いつの日かポート開放をサポートする機能も付けたい…

##基本の使い方

写真は英語版ですが、日本語版も現在作成中です。

まず、起動すると以下のような情報を入力する画面が表示されるため、自身のマイクラのプレイヤー名を正確に記入してください。

  • 6>,7>のGitに関する情報は後述のShareWorldを利用する場合は入力してください。必要ない場合はExampleのままで問題ありません。Gitの初期設定のやり方についてはこちらの記事にまとめました。

image.png


そして、必要な情報を入力し終わるとメイン画面が表示されます。
導入が必要なバージョンと適当なワールド名を指定し、Runを押すことでサーバーが起動します。

image.png


More Settingsを押すと以下のような画面が表示され、データパックや配布ワールド・既存ワールド(Custom Map)の導入、server.propertiesの編集を行うことができます。
また、Spigotサーバーのビルドにも対応しており、この機能を利用すれば、この画面からpluginの導入も可能となっています。
ただし、Spigotを導入する場合はSpigotが対応していないバージョンを選択すると、実行時にエラーを返されます。

image.png

##ShareWorld
普段、A君がサーバーを立てている状況を考えてみてください

A君がいないときはサーバーを立てられないから、マルチプレイできない!

もちろん、A君がお金持ちで電気代など気にせず、常にサーバーを起動状態にしていても問題ない場合は良いですが、そんなことは稀です。
いちいちA君からサーバーのデータをもらい、あなたがサーバーを立てることもできますが、面倒くさいです。
これを解決するために、ShareWorldというgitを介したサーバーデータ同期システムを構築しました。
使い方や実装の内容は長くなるため、別の記事にまとめたいと思います。
一度設定してしまえば、World NameでShareWorldを選択するだけで同期されます。

#実装の解説
基本的に筆者は情報系の学習はすべて独学でやっているため、コードの書き方が未熟な部分が多々あります。
特にGUIの作成は今回が初めてのため、きれいな実装でない部分も少なからずあります。
それでも、初心者なりに一つのシステムを完成させるまでの軌跡を公開し、参考にしてもらえればうれしく思います。
また、公開することにより、「ここはこう書いた方がよい」などのアドバイスももらえればとても助かります。

コードはこちらに掲載しています。

##目次

初期設定

トラブルシューティング

コード紹介

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?