Valheimマルチ専用サーバーの建て方
Valheimなるゲームにハマっている。
Steamで最近話題のゲームをフレンドからオススメされて
プレイ動画などをDiscordなどで配信してもらい、おもしろそうだったので私も買ってみることにした。
土日丸々二日つかってのめり込むようにプレイしていって、2番目のボスを倒す所まで進めることができた。
やっていくうちにオープンワールドサバイバルクラフトゲー特有の問題にぶち当たる。サーバーの稼働だ。
Valheimではマルチプレイのホストとなる人がローカルでサーバーを建ててそこに他のプレイヤーが接続するといった形になるため、ツールなどを入れない限りはゲームを起動している間だけ、サーバーが稼働することになる。
その為、ホストがゲームを終了する際にはそのサーバーは非稼働となり、マルチプレイは一時停止することになる。
マインクラフトやARKなどのゲームでも同様にサーバーをレンタルするか2ndPCに入れてサーバー専用とするか、もしくはメインPCに入れて起動しっぱなしにするかどちらかを選ばなければならない。
PCGamer(英語版)を参考に記事書いたから節々は真似てるけど、分かりにくかったので、自身の備忘録的な感じで残す。
レンタルサーバーの場合
日本語に対応したValheim専用のレンタルサーバーはあまりないが、こちらのサイトではTokyo(日本)でもサーバーを建てることができるようだ。
値段は1か月1,454円となっていて(執筆当時)Valheimの本体価格が2000円代なので決して安い金額ではないが、設定も簡単でサポートも厚いようなので(ステマとかではないよ)時間はないしめんどくさいけど、お金はあるって人にはいいかもしれない。楽だしね。
ただ、上限として10人(10Slot)まで接続対応なのでその点に気を付けなければならない。(上位プランだとさらに高くなる)
自身でサーバーを建てる場合
さて、本題はここから。
毎月1500円以上も払えないよって人向け。私もそう。
1.サーバーを建てるPCにSteamをインストールする。
24時間稼働してもいいやって思うPCにいれる。
一緒にやる人との相談にはなると思うけど、コアタイムは稼働させるとか
その辺はすり合わせたほうがいいかもね。
2.Valheim DedicatedServerをインストールする。
Steamのライブラリ検索から「ゲーム」→「ツール」に切り替える。
そこで「Valheim」と検索することで、「Valheim DedicatedServer」が表示されるので、それをインストールする。
3.Valheim DedicatedServerをインストールした先のフォルダを開く。
インストールした先を忘れたとか、分からなくなった場合は、Steamのライブラリ一覧でValheim DedicatedServerを右クリックしてインストールした先のフォルダを表示で開くことができるはず。
4.サーバーに乗せたいセーブデータをフォルダに移動させる。
既にゲームをしているPCでやる場合はこの手順はスキップしていい。
使用しているワールドのデータか、他からもらったデータでもいいから乗せたいワールドデータをサーバーのPCに移動させる。
:C:\ Users \ YOURNAME \ AppData \ LocalLow \ IronGate \ Valheim \ worlds
そのファイルを移動させたいPCのValheim DedicatedServerフォルダにぶち込む
5.Valheim DedicatedServerのサーバー起動スクリプトファイルを編集する。
手順3で開いたフォルダにある「start_headless_server」バッチファイルを右クリックしてテキストエディタ(メモ帳でもいい)から編集する。
その中の記載している内容として以下の一行があるはず、
start valheim_server -nographics -batchmode -name ??? -port 2456 -world ??? -password ??? -public 1
ここに入る???は最初にワールドをビルドした際に入力した項目なので基本的に変えなくてもいいとは思う。(パスワード変更したいなら都度変える必要がある)
絶対やってはいけないのは、-name -passwordに-worldに名前を含めること。
起動しなくなります。
-nameのあとの???に自分が設定したいサーバー名になるように変更する。
-worldはセーブデータのワールド名と合わせること
-worldはワールド名、-nameはサーバー名と覚えておくといい
そして、自身のサーバーをSteamコミュニティサーバーリスト(フレンドが建てているサーバーリスト)に
表示させるなら
-public のあとの数字を1のままにする。
表示させたくないなら
-public のあとの数字を0にする。
編集が完了したらそのあとは必ず上書き保存をする
6.start_headless_serverファイルのバックアップを作成
ゲームがアップデートなどで更新されていった場合、ファイルが削除され再配置されるため、設定が全て吹き飛びます。(執筆当時)なので、アプデが来るたびに書き直すのも嫌なので、バックアップを作成し、アプデがあればその都度ファイルを上書きすることをオススメします。
7.サーバーPC用のポートを開放するため、ルーターからポート開放を行う。
ポート開放をそもそもしたことがない人は「ポート開放」でググってくれ。
俺が書くよりもはるかにわかりやすい記事がいっぱいあるのでそちらを参考にしてほしい。
ルーターの設定からサーバー対象となるPCの2456-2458 TCP / UDPを開放する。
ホストポートを2456にする
サーバーPCにファイアウォールが有効な場合はファイアウォールの設定で対象のポートを開放する必要がある。
8.サーバーを起動
「start_headless_server」をダブルクリックしてサーバーを起動。
起動することにより、2つのウィンドウが開く。
一つはサーバーログを表示し、もう一つはサーバーの停止をする際に使用する。
任意のキーを押下すると停止してしまうので、扱いには気を付けること。
9.サーバーに参加
先ほどのサーバー設定で-publicを1にしていたら、Steamのフレンドであれば、サーバーリストに表示されるはず。
-publicを0にしている場合はSteamクライアントの[表示]> [サーバー]の[お気に入り]タブにあるSteamサーバーブラウザーを開き、右下にある「サーバーの追加」ボタンからサーバーを追加する必要がある。
サーバーのIPアドレスは外部アドレスのため、xxx.xxx.x:2457というような形で表記されるはずです。
表示されない場合は、バグかサーバー設定のファイルの記載ミスかのどちらかなので、そちらはのちのち記載していきたいと思います。